这是一道简单的题目,但是需要注意的地方也很多,尤其是循环里面的条件,还有注意输出的格式。
/*
输入20个0—9之间的数字,并统计每一个数字出现的次数,并将其输出。
*/
#include<iostream>
using namespace std;
int main()
{
int count[10]={0},num;
for(int i=0;i<20;i++)
{
cin>>num;
for(int j=0;j<10;j++)
{
if(num==j)
{
count[j]++;
}
}
}
for(int i=0;i<10;i++)
{
if(count[i]!=0)
{
cout<<i<<"输入了"<<count[i]<<"次"<<endl;
}
}
return 0;
}
接下来是用一种更加简单的方法来写的:
#include<iostream>
using namespace std;
int main()
{
int num,count[10]={0};
for(int i=0;i<20;i++)
{
cin>>num;
switch(num)
{
case 0:count[0]++;break;
case 1:count[1]++;break;
case 2:count[2]++;break;
case 3:count[3]++;break;
case 4:count[4]++;break;
case 5:count[5]++;break;
case 6:count[6]++;break;
case 7:count[7]++;break;
case 8:count[8]++;break;
case 9:count[9]++;break;
}
}
for(int i=0;i<10;i++)
{
if(count[i]!=0)
{
cout<<i<<"输入了"<<count[i]<<"次"<<endl;
}
}
return 0;
}
我还是觉得有点复杂,所以我还有哟中更加简单的方法:
#include<iostream>
using namespace std;
int main()
{
int num,count[10]={0};
for(int i=0;i<20;i++)
{
cin>>num;
count[num]++;
}
for(int i=0;i<10;i++)
{
if(count[i]!=0)
{
cout<<i<<"输入了"<<count[i]<<"次"<<endl;
}
}
return 0;
}