C语言实验:数组程序设计与应用

需积分: 0 0 下载量 118 浏览量 更新于2024-08-03 收藏 998KB DOC 举报
"C语言 实验3 数组程序设计(一).doc" 在这个C语言实验中,学生被要求掌握一维数组和二维数组的基本概念、初始化和使用方法,以便有效地处理批量数据。实验分为填空题和编程题两部分。 在填空题中,学生需要创建一个一维数组来存储5名学生的成绩,并计算他们的平均分。提供的代码框架如下: ```c #include<stdio.h> #define N 5 void main() { int a[N]; // 定义一维数组 int i, sum = 0; float aver; printf("\nInput 5 numbers: "); for(i = 0; i < 5; i++) { scanf("%d", &a[i]); // 输入数组元素 sum += a[i]; } aver = (float)sum / N; // 计算平均分 printf("\nThe average score is: %.2f\n", aver); } ``` 在这个程序中,`#define N 5`用于定义常量N,表示数组的大小。`int a[N]`声明了一个包含5个整数的一维数组。`for`循环用于读取用户输入的成绩并累加到`sum`上,最后通过除以元素个数计算平均分。 编程题要求将一个数组的元素按逆序重新存放。给定示例显示了如何实现这一功能: ```c #include<stdio.h> int main() { printf("计算2142-06-周建梅\n"); int a[100], n, m; printf("你要输入的数组元素的个数为:\n"); scanf("%d", &n); for(int i = 0; i < n; i++) { scanf("%d", &a[i]); } for(int i = 0; i < n / 2; i++) { m = a[i]; a[i] = a[n - 1 - i]; a[n - 1 - i] = m; } // 输出逆序后的数组 printf("Reversed array: "); for(int i = 0; i < n; i++) { printf("%d ", a[i]); } return 0; } ``` 在这个程序中,首先输出个人信息,然后读取用户想要逆序的数组元素个数。接着,通过两个`for`循环实现数组的翻转。第一个`for`循环遍历数组前半部分,将当前元素与对应的倒数位置元素交换。第二个`for`循环用于打印逆序后的数组。 这两个题目旨在巩固和提升学生对C语言中数组操作的理解,包括定义、初始化、读取、修改以及遍历数组。这些基本技能对于任何C语言程序员来说都是至关重要的。