1. 程式人生 > 其它 >習題8-10 輸出學生成績 (20分)

習題8-10 輸出學生成績 (20分)

技術標籤:# 浙大版《C語言程式設計(第3版)》題目集c語言c++visual studio

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

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

輸出格式:
按照以下格式輸出:

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

結果均保留兩位小數。

輸入樣例:

3
85 90 95

輸出樣例:

average = 90.00
max = 95.00
min = 85.00

原始碼

#include<stdio.h>
#include<stdlib.h> #pragma warning(disable:4996) //動態記憶體分配實現 int main() { int n; scanf("%d", &n); double* scores; scores = (double*)malloc(n * 8);//動態記憶體分配 for (int i = 0; i < n; i++) { scanf("%lf", &scores[i]);//注意將int改為double後,一定要改%d——%lf,別忘嘍 否則結果嚇人 } int max_index =
0, min_index = 0; double sum = 0; for (int i = 0; i < n; i++) { if (scores[i] > scores[max_index]) { max_index = i; } if (scores[i] < scores[min_index]) { min_index = i; } sum += scores[i]; } printf("average = %.2lf\n", sum*1.0 / n); printf("max = %.2lf\n", scores[
max_index]); printf("min = %.2lf\n", scores[min_index]); free(scores); scores = NULL; getchar(); getchar(); return 0; }

***謝謝!!!