1、从键盘输入若干数据整数(零表示结束),统计出数据个数,以及最大值、最小值和平均值。 用一个函数实现数据输入的功能,其首部为: int input(int s[]) input的参数为输入的数据,函数返回值大于0表示该行输入的数据个数,0表示输入结束。 用一个函数实现求最大值、最小值和平均值的功能,首部为: void statistics(int n, int s[], int *max, int *min, float *avg) 1 2 3 4 5 0 Max=5 Min=1 Avg=3.000
时间: 2023-06-15 18:07:11 浏览: 124
以下是代码实现:
```c
#include <stdio.h>
int input(int s[]) {
int n = 0;
do {
scanf("%d", &s[n]);
n++;
} while (s[n-1] != 0);
return n-1;
}
void statistics(int n, int s[], int *max, int *min, float *avg) {
*max = s[0];
*min = s[0];
int sum = 0;
for (int i=0; i<n; i++) {
if (s[i] > *max) {
*max = s[i];
}
if (s[i] < *min) {
*min = s[i];
}
sum += s[i];
}
*avg = (float)sum / n;
}
int main() {
int s[100];
int n = input(s);
int max, min;
float avg;
statistics(n, s, &max, &min, &avg);
printf("Max=%d Min=%d Avg=%.3f", max, min, avg);
return 0;
}
```
输入数据后,调用 input 函数读取数据并返回数据个数 n。然后调用 statistics 函数计算最大值、最小值和平均值,并将结果存储在传递进函数的指针变量中。最后,输出最大值、最小值和平均值。
阅读全文