读入N名学生的成绩,将获得某一给定分数的学生人数输出。
Input测试输入包含若干测试用例,每个测试用例的格式为 第1行:N 第2行:N名学生的成绩,相邻两数字用一个空格间隔。 第3行:给定分数 当读到N=0时输入结束。其中N不超过1000,成绩分数为(包含)0到100之间的一个整数。 Output对每个测试用例,将获得给定分数的学生人数输出。 Sample Input 380 60 9060285 660560 75 90 55 75750Sample Output
102 Huge input, scanf is recommended.
#include<stdio.h>
#include<string.h> int main() { int a[1000];int i;do //实现输入数据为0结束 { //while(scanf("%d",&i)!=EOF&&n)scanf("%d",&i);for(int n=1;n<=i;n++){ scanf("%d",&a[n]);} int m;scanf("%d",&m);int p=0; //p的位置 for(int k=1;k<=i;k++){ if(a[k]==m)p++; } printf("%d\n",p);}while(i!=0); return 0; } //为什么oj上这种判断是错误的大牛的答案
#include<stdio.h>
int score[1005]; int grade;
int main(){ int n; while(scanf("%d",&n) && n){ int i; for(i=0;i<n;i++) scanf("%d",&score[i]); scanf("%d",&grade); int cnt=0; for(i=0;i<n;i++) if(grade==score[i]) cnt++; printf("%d\n",cnt); } return 0; }
有空要看看有什么不同