统计同成绩学生人数
Problem Description
读入N名学生的成绩,将获得某一给定分数的学生人数输出。
Input
测试输入包含若干测试用例,每个测试用例的格式为
第1行:N
第2行:N名学生的成绩,相邻两数字用一个空格间隔。
第3行:给定分数
当读到N=0时输入结束。其中N不超过1000,成绩分数为(包含)0到100之间的一个整数。
Output
对每个测试用例,将获得给定分数的学生人数输出。
Sample Input
3
80 60 90
60
2
85 66
0
5
60 75 90 55 75
75
0
Sample Output
1
0
2
方法1:
#include<stdio.h>
int main()
{
int N,i,a[10000],b,cnt;
while(scanf("%d",&N)!=EOF){
if(N==0)break;
cnt=0;
for(i=0;i<N;i++)
scanf("%d",&a[i]);
scanf("%d",&b);
for(i=0;i<N;i++)
if(b==a[i])cnt=cnt+1;
printf("%d\n",cnt);
}
return 0;
}
方法2:
#include<stdio.h>
int main()
{
int N,a,i,b;
while(scanf("%d",&N)!=EOF){
if(N==0)break;
int con[102]={0};
for(i=0;i<N;i++){
scanf("%d",&a);
con[a]++; /*分数为a的同学数量加一*/
}
scanf("%d",&b);
printf("%d\n",con[b]);
}
return 0;
}