题解 | 统计成绩(未知数目输入找最大最小平均值)
统计成绩
https://www.nowcoder.com/practice/cad8d946adf64ab3b17a555d68dc0bba
#include <stdio.h> int main() { int a = 0; int i = 0; scanf("%d",&a); float arr[100]={0.0}; while (i<a) { scanf("%f",&arr[i]); i++; } float max = arr[0]; i = 1; while (i<a) { if (max < arr[i]) { max =arr[i]; } i++; } float min = arr[0]; i = 1; while (i<a) { if (min > arr[i]) { min =arr[i]; } i++; } i = 0; float eve=0; while(i<a) { eve = eve + arr[i]; i++; } printf("%.2f ",max); printf("%.2f ",min); printf("%.2f ",eve/(float)a); return 0; }
#include <stdio.h> int main() { int a = 0; int i = 0; // 输入数组大小 printf("请输入数组大小(不超过100):"); scanf("%d", &a); // 检查输入是否合法 if (a > 100 || a <= 0) { printf("输入的值无效!请输入 1 到 100 之间的整数。\n"); return 1; // 退出程序 } // 输入数组元素 float arr[100] = {0.0}; printf("请输入 %d 个浮点数:\n", a); while (i < a) { scanf("%f", &arr[i]); i++; } // 计算最大值、最小值和总和 float max = arr[0]; float min = arr[0]; float sum = 0.0; for (i = 0; i < a; i++) { if (max < arr[i]) { max = arr[i]; // 更新最大值 } if (min > arr[i]) { min = arr[i]; // 更新最小值 } sum += arr[i]; // 累加总和 } // 输出结果 printf("最大值:%.2f\n", max); printf("最小值:%.2f\n", min); printf("平均值:%.2f\n", sum / (float)a); return 0; }