问题 A: 统计同成绩学生人数

题目描述

读入N名学生的成绩,将获得某一给定分数的学生人数输出。

输入

测试输入包含若干测试用例,每个测试用例的格式为

第1行:N
第2行:N名学生的成绩,相邻两数字用一个空格间隔。
第3行:给定分数

当读到N=0时输入结束。其中N不超过1000,成绩分数为(包含)0到100之间的一个整数。

输出

对每个测试用例,将获得给定分数的学生人数输出。

样例输入

4
70 80 90 100
80
3
65 75 85
55
5
60 90 90 90 85
90
0

样例输出

1
0
3

当读到N=0时输入结束。不能直接用scanf !=0,得补个 && n != 0

#include <cstdio>
const int maxn=1010;
int a[maxn];
int main(){
	int n, x;
	while(scanf("%d", &n) && n!=0){
		for (int i=0; i<n; i++){
			scanf("%d", &a[i]);
		}
		scanf("%d", &x);
		int k=0, count=0;
		for (k=0; k<n; k++){
			if(a[k]==x){
				count++;
			}
		}
		printf("%d\n", count);
	}
	return 0;
}

猜你喜欢

转载自blog.csdn.net/chuyuan_li/article/details/80834827