读取若干个整数,将其中大于平均值的前五个存储到一维数组中的C语言程序
时间: 2024-03-19 21:46:06 浏览: 60
好的,以下是一个简单的 C 语言程序,可以实现您所要求的功能:
```c
#include <stdio.h>
#define MAX_SIZE 100
int main()
{
int i, n, sum = 0, count = 0, arr[MAX_SIZE];
float avg;
// 读取输入整数
printf("请输入若干个整数,以 -1 结束:\n");
for (i = 0; i < MAX_SIZE; i++) {
scanf("%d", &arr[i]);
if (arr[i] == -1) {
break;
}
sum += arr[i];
n++;
}
// 计算平均值
if (n > 0) {
avg = (float)sum / n;
}
else {
printf("None");
return 0;
}
// 将大于平均值的前五个存储到数组中
for (i = 0; i < MAX_SIZE; i++) {
if (arr[i] > avg) {
arr[count] = arr[i];
count++;
}
if (count == 5) {
break;
}
}
// 输出结果
if (count > 0) {
printf("大于平均值的前五个整数为:\n");
for (i = 0; i < count; i++) {
printf("%d ", arr[i]);
}
}
else {
printf("None");
}
return 0;
}
```
注意,上述代码中的 `MAX_SIZE` 定义了数组的最大长度,可以根据需要进行修改。另外,为了简化问题,上述程序只考虑了大于平均值的前五个整数,如果需要考虑更多整数,可以根据需要进行修改。
阅读全文