1. 程式人生 > >迴圈結構 7-9 統計學生成績

迴圈結構 7-9 統計學生成績


1 實驗過程

#include <stdio.h>
int main(){
  int i,n;
int A=0,B=0,C=0,D=0,E=0;
int a[1000];
scanf("%d",&n);
for(i=0;i<n;i++){
scanf("%d",&a[i]);
}
for(i=0;i<n;i++){
 if(a[i]>=90){
   A++;
 }
 else if(a[i]>=80&&a[i]<90){
   B++;
 }else if(a[i]>=70&&a[i]<80){
   C++;
 }else if(a[i]>=60&&a[i]<70){
   D++;
 }else if(a[i]<60){
   E++;
 }
 
}
printf("%d %d %d %d %d",A,B,C,D,E);
return 0;
}
程式問題在於


然後通過百度搜索發現是標點符號問題。https://zhidao.baidu.com/question/324204138.html 改正後 #include <stdio.h>
int main(){
  int i,n;
int A=0,B=0,C=0,D=0,E=0;
int a[1000];
scanf("%d",&n);
for(i=0;i<n;i++){
scanf("%d",&a[i]);
}
for(i=0;i<n;i++){
 if(a[i]>=90){
   A++;
 }
 else if(a[i]>=80&&a[i]<90){
   B++;
 }else if(a[i]>=70&&a[i]<80){
   C++;
 }else if(a[i]>=60&&a[i]<70){
   D++;
 }else if(a[i]<60){
   E++;
 }
 
}
printf("%d %d %d %d %d",A,B,C,D,E);
return 0;
}

2 總結

1.這道題一開始無法下手,原因很多

其一基礎薄弱。。。

其二是題目沒讀懂,A,B,C,D,E是指一個區間段。

其三是是不知道如何輸入兩行資料,怎麼放在迴圈裡。

2.具體的思考過程

先看到題目 “輸入在第一行中給出一個正整數N(1000)”,也就是說應該有定義一個數組所以有int a[1000]; 那麼肯定要用到迴圈,以及選擇語句。 在接下來可以用a[i]來表示,然後共有"n"個,有for(i=0;i<n;i++)。

3.學到的東西

明白了A++等等的意思是統計個數,就是說符合if就加一個,逐步統計個數,最後輸出。