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

用任意一种语言编写程序完成以下功能:从键盘输入n(0<n<100)个整数,计算并输出其中出现次数最多且数值最大的元素及其出现次数。最好是VB语言,谢谢了!... 用任意一种语言编写程序完成以下功能:从键盘输入n(0<n<100)个整数,计算并输出其中出现次数最多且数值最大的元素及其出现次数。 最好是VB语言,谢谢了! 展开
 我来答
登哥35946
2015-04-21 · TA获得超过189个赞
知道答主
回答量:110
采纳率:100%
帮助的人:94.1万
展开全部
这个程序查询结果是不是可以理解为:先计算次数出现最多的,在出现次数相等的情况下,数值最大的? 因为这个问题是有矛盾的,出现次数最多的不一定数值最大 用c++写的,思路都在,vb很久没有用了。不想去看了。希望思路对你有用 #include<iostream.h> void main() { int a[100],b[100]={0}; //数组a中存放输入的整数,数组b中存放对应整数出现的次数(a[i]中整数出现的次数放在b[i]中 int m=0,n,x,k,maxa,maxb; cout<<"请输入整数个数:"<<endl; cin>>n; for(int i=0;i<n;i++) //该循环将输入n 个整数 { cin>>x; for(int j=0;j<m;j++) //每输入一个数与当前a[i]数组进行比较,看该数是否存在,若存在则对应b[i]累加。并且跳出循环 { 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<m;i++) //该循环求数组a,b中最大值得到最后结果 { if(a[i]>maxa)maxa=a[i]; if(b[i]>maxb){maxb=b[i];k=i;} } cout<<"n个数中出现次数最多的数是"<<a[k]<<"出现的次数为:"<<b[k]<<endl; cout<<"n个数中最大的数是"<<maxa<<endl; }
yinyan78
2015-04-22 · TA获得超过145个赞
知道小有建树答主
回答量:106
采纳率:100%
帮助的人:95.2万
展开全部
这个程序查询结果是不是可以理解为:先计算次数出现最多的,在出现次数相等的情况下,数值最大的?
因为这个问题是有矛盾的,出现次数最多的不一定数值最大
用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<<"请输入整数个数:"<<endl;
cin>>n;

for(int i=0;i<n;i++) //该循环将输入n 个整数
{
cin>>x;
for(int j=0;j<m;j++) //每输入一个数与当前a[i]数组进行比较,看该数是否存在,若存在则对应b[i]累加。并且跳出循环
{
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<m;i++) //该循环求数组a,b中最大值得到最后结果
{
if(a[i]>maxa)maxa=a[i];
if(b[i]>maxb){maxb=b[i];k=i;}

}
cout<<"n个数中出现次数最多的数是"<<a[k]<<"出现的次数为:"<<b[k]<<endl;
cout<<"n个数中最大的数是"<<maxa<<endl;

}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式