如何用c语言写出一个先输入一行整数,结果输出低于平均分的数
时间: 2024-12-13 12:15:53 浏览: 5
在C语言中,你可以通过以下步骤编写一个简单的程序来读取一行为数的一组整数,计算平均值,然后找出并输出那些低于平均值的数字:
```c
#include <stdio.h>
#include <stdlib.h> // 包含求平均值所需浮点运算库
// 函数声明
double average(int numbers[], int count);
void print_below_average(int numbers[], int count);
int main() {
int n;
printf("请输入整数的数量:");
scanf("%d", &n); // 输入整数个数
int *arr = malloc(n * sizeof(int)); // 动态分配内存
if (arr == NULL) {
printf("内存分配失败!\n");
return 1;
}
printf("请输入%d个整数:\n", n);
for (int i = 0; i < n; ++i) {
scanf("%d", &arr[i]);
}
double avg = average(arr, n); // 计算平均值
printf("平均值是:%.2f\n", avg);
print_below_average(arr, n); // 输出低于平均值的数字
free(arr); // 释放内存
return 0;
}
// 平均值函数
double average(int numbers[], int count) {
double sum = 0.0;
for (int i = 0; i < count; ++i) {
sum += numbers[i];
}
return sum / count;
}
// 打印低于平均值的函数
void print_below_average(int numbers[], int count) {
double avg = average(numbers, count);
for (int i = 0; i < count; ++i) {
if (numbers[i] < avg) {
printf("%d ", numbers[i]); // 输出数字
}
}
printf("\n");
}
```
这个程序首先获取用户输入的整数个数和数值,计算它们的平均值,然后遍历数组,如果发现某个数小于平均值就打印出来。
阅读全文