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

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

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

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

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

average = 平均成績
max = 最高成績
min = 最低成績
結果均保留兩位小數。

輸入樣例:
3
85 90 95
輸出樣例:
average = 90.00
max = 95.00
min = 85.00


#include<stdio.h>
#include<stdlib.h>
int
main() { int n,*a,i; double max=0,min,sum=0; scanf("%d",&n); if((a=(int*)malloc(n*sizeof(int)))==NULL){ exit(1);/*此處的(int*)將malloc找到的**連續**n個int型大小的房間,改變為n個連續的int型房間。從而以下可以進行a+i(也可以使用陣列形式) */ } min=*a; for(i=0;i<n;i++) { scanf("%d",a+i); if(*(a+i)>max) max=*(a+i); if(*
(a+i)<min) min=*(a+i); sum+=*(a+i); } printf("average = %.2f\nmax = %.2f\nmin = %.2f\n",sum/n,max,min); free(a); return 0; }