编写程序:从键盘输入n(0<n<100)个整数,计算并输出其中出现次数最多且数值最大的元素及其出现次数。

2024年11月17日 09:34
有1个网友回答
网友(1):

这个程序查询结果是不是可以理解为:先计算次数出现最多的,在出现次数相等的情况下,数值最大的?
因为这个问题是有矛盾的,出现次数最多的不一定数值最大
用c++写的,思路都在,vb很久没有用了。不想去看了。希望思路对你有用

#include
void main()
{
int a[100],b[100]={0}; //数组a中存放输入的整数,数组b中存放对应整数出现的次数(a[i]中整数出现的次数放在b[i]中
int m=0,n,x,k,maxa,maxb;
cout<<"请输入整数个数:"< cin>>n;

for(int i=0;i {
cin>>x;
for(int j=0;j {
if(a[j]==x)
{
b[j]++;
break;
}
}
if(j==m)//当j=m表名当前输入的数据a中不存在,所以将其插入数组a中,并接对应b[i] 计数;
{
m++;
a[m]=x;
b[j]++;
}

}
maxa=a[0];maxb=b[0];
for( i=1;i {
if(a[i]>maxa)maxa=a[i];
if(b[i]>maxb){maxb=b[i];k=i;}

}
cout<<"n个数中出现次数最多的数是"< cout<<"n个数中最大的数是"<
}