hd 2023 求平均成績
阿新 • • 發佈:2019-02-10
求平均成績
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 62292 Accepted Submission(s): 14946
Input 輸入資料有多個測試例項,每個測試例項的第一行包括兩個整數n和m,分別表示學生數和課程數。然後是n行資料,每行包括m個整數(即:考試分數)。
Output 對於每個測試例項,輸出3行資料,第一行包含n個數據,表示n個學生的平均成績,結果保留兩位小數;第二行包含m個數據,表示m門課的平均成績,結果保留兩位小數;第三行是一個整數,表示該班級中各科成績均大於等於平均成績的學生數量。
每個測試例項後面跟一個空行。
Sample Input 2 2 5 10 10 20 Sample Output 7.50 15.00 7.50 15.00 1 Author lcy Source Recommend lcy | We have carefully selected several similar problems for you:
#include<stdio.h> #include<string.h> int main() { int n,m,s[60][10],i,j,k,l; double a[60],b[10]; while(scanf("%d%d",&n,&m)!=EOF) { memset(a,0,sizeof(a)); memset(b,0,sizeof(b)); for(i=0;i<n;i++) for(j=0;j<m;j++) scanf("%d",&s[i][j]); for(i=0;i<n;i++) for(j=0;j<m;j++) a[i]+=s[i][j]; for(i=0;i<n;i++) { if(i!=n-1) printf("%.2f ",a[i]/m); else printf("%.2f\n",a[i]/m); } for(j=0;j<m;j++) for(i=0;i<n;i++) b[j]+=s[i][j]; for(j=0;j<m;j++) { if(j!=m-1) printf("%.2f ",b[j]/n); else printf("%.2f\n",b[j]/n); } l=0; for(i=0;i<n;i++) { k=0; for(j=0;j<m;j++) { if(s[i][j]>=b[j]/n) k++; } if(k==m) l++; } printf("%d\n\n",l); } return 0; } //怎樣呼叫依次各個成績 二維陣列靈活運用