在C语言程序中如何计算一个数组中的每个整数的个数

如题所述

#include
#define
MAX_NUM
1024
//假设最大的一个整数为1024
int
main()
{
int
b[MAX_NUM];
//统计数组
int
a[4098];//输入数组
int
i;
int
count
=
0;
for(i=0;i<4098;i++)
{
printf("please
input
a[%d],input
-1
to
stop:",i);
scanf("%d",&a[i]);
if(a[i]
==
-1)
{
break;
}
count
++;
}
//初始化统计数组
for(i
=
0;i
{
b[i]
=
0;
}
//统计部分
for(i
=
0;i
{
b[a[i]]++;
}
for(i
=
0;i
<
MAX_NUM
&&
i
<
count;i++)
{
printf("the
number
of
%d
is:%d\n",i,b[i]);
}
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-11-13
也可以采用先对数组进行排序的方法,然后再统计相同的个数就很容易实现了。(相同的数肯定排在一起)
第2个回答  2020-05-25
#include<stdio.h>
#define
MAX_NUM
1024
//假设最大的一个整数为1024
int
main()
{
int
b[MAX_NUM];
//统计数组
int
a[4098];//输入数组
int
i;
int
count
=
0;
for(i=0;i<4098;i++)
{
printf("please
input
a[%d],input
-1
to
stop:",i);
scanf("%d",&a[i]);
if(a[i]
==
-1)
{
break;
}
count
++;
}
//初始化统计数组
for(i
=
0;i<MAX_NUM;i++)
{
b[i]
=
0;
}
//统计部分
for(i
=
0;i<count;i++)
{
b[a[i]]++;
}
for(i
=
0;i
<
MAX_NUM
&&
i
<
count;i++)
{
printf("the
number
of
%d
is:%d\n",i,b[i]);
}
}本回答被提问者采纳
相似回答