用C语言写一个程序从键盘上输入5个非零实数,存入一维数组中,写一个程序编程完成以下操作(必须使用1维数组和循环语句完成): a) 原序输出数组b) 逆序输出数组c) 求数组平均值 d) 最大数数组下标
时间: 2024-12-22 10:13:21 浏览: 70
为了编写这个C语言程序,我们将首先声明一个一维数组存储输入的5个非零实数,然后通过循环结构获取用户输入,接着分别完成原序、逆序输出数组以及计算平均值和最大数的下标。以下是完整的程序代码:
```c
#include <stdio.h>
#define SIZE 5
int main() {
double arr[SIZE];
double sum = 0;
int max_index = 0;
// 从键盘输入5个非零实数并存入数组
for (int i = 0; i < SIZE; i++) {
printf("请输入第%d个非零实数:", i + 1);
scanf("%lf", &arr[i]);
if (arr[i] == 0) {
printf("错误:只能输入非零实数。\n");
return 1; // 如果输入0,终止程序
}
sum += arr[i];
}
// 原序输出数组
printf("原序数组:\n");
for (int i = 0; i < SIZE; i++) {
printf("%.2lf ", arr[i]);
}
printf("\n");
// 逆序输出数组
printf("逆序数组:\n");
for (int i = SIZE - 1; i >= 0; i--) {
printf("%.2lf ", arr[i]);
}
printf("\n");
// 计算数组平均值
double average = sum / SIZE;
printf("数组平均值:%.2lf\n", average);
// 找到最大数的下标
for (int i = 0; i < SIZE; i++) {
if (arr[i] > arr[max_index]) {
max_index = i;
}
}
printf("最大数的下标:%d\n", max_index);
return 0;
}
```
在这个程序中,我们使用`for`循环遍历数组,并通过条件判断保证了输入的是非零实数。最后,我们分别展示了数组的原序和逆序,以及计算出的平均值和最大值的下标。
阅读全文
相关推荐













