描述
有n个数,数的范围都在20以内(包括20),然后现在我要统计1-20分别出现的次数是多少
格式
输入格式
多组输入
输入n(1<=n<=40)
输出格式
输出1-20分别出现多少
样例
样例输入 Copy
9
1 19 19 1 17 19 2 10 19
样例输出 Copy
1:2
2:1
3:0
4:0
5:0
6:0
7:0
8:0
9:0
10:1
11:0
12:0
13:0
14:0
15:0
16:0
17:1
18:0
19:4
20:0
源代码
#include<stdio.h>
int main()
{
int i,n,x;
while(scanf("%d",&x)!=EOF)
{
int a[21]={0};//每次循环时都需要重新定义数组a的值
while(x--)
{
scanf("%d",&n);
if(n>20||n<=0)
continue;
a[n]++;
}
for(i=1;i<=20;i++)
{
printf("%d:%d\n",i,a[i]);//i需要从1开始才能打印1~20的数据
}
}
return 0;
}
总结问题
1.题目中需要多组输入即输入多个n
2.在每次循环开始时都需要定义数组a的初始值不然会导致答案错误