習題8-10 輸出學生成績


本題要求編寫程序,根據輸入學生的成績,統計並輸出學生的平均成績、最高成績和最低成績。建議使用動態內存分配來實現。

輸入格式:

輸入第一行首先給出一個正整數N,表示學生的個數。接下來一行給出N個學生的成績,數字間以空格分隔。

輸出格式:

按照以下格式輸出:

average = 平均成績 max = 最高成績 min = 最低成績 
 

結果均保留兩位小數。

輸入樣例:

3
85 90 95
 

輸出樣例:

average = 90.00
max = 95.00
min = 85.00

本題沒有什么難度,直接做就ok,它題目考察的是一個知識點,不是思路,所以很簡單。
 1 #include<stdio.h>
 2 #include<stdlib.h>
 3 #include<string.h>
 4 #include<math.h>
 5 int main() {
 6     int n = 0;
 7     scanf("%d", &n);
 8     int max = 0, min = 100;                //此處min賦值100,因為如果賦值0,他就永遠是最小的了,成績最高100,所以賦值100
 9     double average = 0.0;
10     int sum = 0;
11     int* a = (int*)malloc(n * sizeof(int));
12     for (int i = 0; i < n; i++) {
13         scanf("%d", &a[i]);
14         if (max < a[i]) {
15             max = a[i];
16         }
17         if (min > a[i]) {
18             min = a[i];
19         }
20         sum += a[i];
21     }
22 
23     average = 1.0 * sum / n;
24     printf("average = %.2lf\n", average);
25     printf("max = %d.00\n", max);
26     printf("min = %d.00", min);
27     return 0;
28     
29 }
這里我依然只用了一層循環,就直接輸入以后就處理了,麻煩點的方法是,先讀,再處理,那樣很麻煩。
這里我的max和min都是整型,只是在最后輸出的時候加入了.00這樣的“假”的小數。
沒什么說的啦!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM