马上要考试,还有个疑问,求大神指点
题目如下:小红是医学院的新生,她对微生物学非常感兴趣,而在微生物的培养过程中,经常需要用显微镜进行微生物的种类和数量的统计。 小红的老师要小红统计显微镜下出现次数最多的细菌,小红在观察细菌的过程中,用自然数来代表她观察到的细菌种类(细菌的种类m<=100,从1到m连续编号),每观察到一个细菌就在纸条上记下一个自然数。观察结束后,她手头就有了一张有n个数字的纸条(n<=1000)。她需要知道在m中细菌中哪种细菌出现的次数最多,并记录其次数。
我的思路如下:
#include<stdio.h>
int main()
{
int n,i,j,a[1001],b[101]={0},tmp,num;
scanf("%d",&n);
for(i=1;i<=n;i++)
{
scanf("%d",&a[i]);
}
for(i=1;i<=n;i++)
{
for(j=1;j<=100;j++)
{
if(a[i]==j) b[j]++;
}
}
for(i=1;i<=n;i++)
{
for(j=1;j<=n-i;j++)
if (b[j]>b[j+1])
{
temp=b[j];
b[j]=b[j+1];
b[j+1]=temp;
}
}
但把每个细菌出现的次数排序之后就不知道怎么做了。不知道怎么把细菌编号和出现次数对应起来,求大神帮忙!由于第一次发帖,没有分,有人能帮忙吗?