解题思路:1、用数组中的每个数与数组中的数进行比较,相同则+1,+2,+..每次比较获得的值存入数组(重数)中,每次比较的值存入(众数)数组中
2,、找出(重数)数组中最大的数就是重数值;
3、(重数)数组位置,就是(众数)数组位置,输出众数;
4、我没有进行多个众数,大小的比较,还没有想好怎么写,但是根据我这个答案运行也是正确的
注意事项:
参考代码:
#include <stdio.h>
int main()
{
int a[100],m[100],x[100];//a输入数据,m存储重数个数,x存储众数位置;
int k,i,j,y,n;
int l=0,max;
scanf("%d",&n);//多少个数进行比较
for(i=0;i<n;i++)
{
scanf("%d",&a[i]);//输入n个数
}
for(i=0;i<n;i++)
{
m[i]=0;//重数个数
x[i]=0;//众数
}
for(i=0;i<n;i++)
{
k=a[i];
for(j=0;j<n;j++)
{
if(k==a[j])//从第一个数开始与数组中每个数进行比较
m[l]+=1;//相同则加一
}
x[l]=k;//数组存储每个判断过得数
l++;
}
max=m[0];//进行大小比较
for(i=0;i<n;i++)
{
if(max<=m[i])
{
max=m[i];//最多的即为重数
y=i;//记录最多数的位置
}
}
printf("%d\n%d",x[y],max);//输出众数、重数;
return 0;
}
0.0分
0 人评分
C语言程序设计教程(第三版)课后习题10.1 (C语言代码)浏览:610 |
2006年春浙江省计算机等级考试二级C 编程题(2) (C语言代码)浏览:564 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:591 |
假币问题 (C语言代码)浏览:2332 |
C语言程序设计教程(第三版)课后习题9.2 (C语言代码)浏览:687 |
简单的a+b (C语言代码)浏览:718 |
简单的a+b (C语言代码)浏览:759 |
C语言程序设计教程(第三版)课后习题8.3 (C语言代码)浏览:411 |
不容易系列 (C语言代码)浏览:664 |
妹子杀手的故事 (C语言代码)浏览:1216 |