永发信息网

用c语言编程从键盘输入n(0<n<100)个整数,计算出其中出次数最多且数值最大的元素及出现次数

答案:4  悬赏:0  手机版
解决时间 2021-04-04 10:22
请尽快
最佳答案
TC2.0下调试通过,楼主放心使用。
#include <stdio.h>
void main()
{
int n,i,max,x;
int t=1;
max=0;
printf("Input n:\n");
scanf("%d",&n);
printf("Input %d numbers(0<numbers<100):\n",n);
for(i=1;i<=n;i++)
{
scanf("%d",&x);
if(max<x)
{
max=x;
t=1;
}
else if(max==x)
t++;
}
printf("Max is %d,for %d times\n",max,t);
}
全部回答
#include <stdio.h> int main(void) { int n,i,max,j; int t=1; scanf("%d",&n); scanf("%d",&max); for(i=1;i<n;++i) { scanf("%d",&j); if(max<j) { max=j; t=1; } else if(max==j) t++; } printf("Max is %d,for %d times\n",max,t); return 0; }
#include <stdio.h> int main(void) { int n,i,max,j; int t=1; max=0; scanf("%d",&n); for(i=1;i<n;++i) { scanf("%d",&j); if(max<j) { max=j; t=1; } else if(max==j) t++; } printf("Max is %d,for %d times\n",max,t); return 0; } 最大的数值不是输入的
1:次数最多 2:在次数最多的基础上,数值最大 _______________________________________________以下为程序: #include // 设置最大值 #define max 100 typedef struct record { int number[max]; int counter[max]; }record; int isexist(int array[], int index, record rd) { int i; int flag = -1; bool finish = true; for (i = 0; i < index && finish; i++) { if (array[index] == rd.number[i]) { flag = i; finish = false; } } return flag; } int findmaxnumber(record rd, int index) { int i = 0; int flag = 0; int maxnumber = rd.number[0]; int maxcounter = rd.counter[0]; while (i < index) { if (rd.counter[i] > maxcounter) { flag = i; maxnumber = rd.number[i]; maxcounter = rd.counter[i]; } else if (rd.counter[i] == maxcounter) { if (rd.number[i] > maxnumber) { flag = i; maxnumber = rd.number[i]; maxcounter = rd.counter[i]; } } i++; } return flag; } int main() { int i; int n; int arr[max]; record rd; int ct; int find; // 初始化结构体 for (i = 0; i < max; i++) { rd.counter[i] = 0; rd.number[i] = 0; } // 输入整数的个数n printf("enter n (0 scanf("%d", &n); // 采用数组记录输入的整数 printf("enter %d number : ", n); for (i = 0; i < n; i++) { scanf("%d", &arr[i]); } ct = 0; i = 0; while (i < n) { int tempflag; tempflag = isexist(arr, i, rd); if (tempflag == -1) { rd.number[ct] = arr[i]; rd.counter[ct]++; ct++; } else { rd.counter[tempflag]++; } i++; } find = findmaxnumber(rd, ct); printf("max number: %d, max counter: %d\n", rd.number[find], rd.counter[find]); return 0; } ——————————————————————————————
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
戒指 PT950 CTF DO.182.ct,这个戒指要多少钱
推荐几本综漫小说100万字以上
毕节有养蝎子的吗?
手机有人打电话来经常听不到,振动开了,音量
小红写了一篇作文,刚好用去了4页纸,每页纸
遂宁颐康元现状
耳朵里长脓包怎么去除
形容女人熬夜的句子,有关熬夜的句子
石龙到香港怎么走
smartgit 怎么切换帐号
气象爱好者孔宗明同学在x(x为正整数)天中观
初中生防溺水名言警句,有关于防溺水名言警句
楼房酒跟婚礼一起办讲台上要说些什么话
解放悍v牵引车国四的270耗油量多少
我想学VHDL语言,但是quartus ii 又不会破解
推荐资讯
复印件,身份证的正反面都要,那户口簿的怎么
额头和面上忽然泛起了一团团的黑气
植物扦插大多都要用到生根粉吗?
班主任评语高三,高三班主任毕业鉴定评语怎么
汉中市在哪里,汉中市在哪个省,汉中属于哪个
含有是碧,和英的诗句
福州教育书店(五一路上)怎麼去阿?
the new medicine for a year and we’ll see
单选题Thisexamisratherhard,butitis
束手待毙的束的意思,束手待毙是什么意思?
信合存款定期一年,中途查金额怎么显示没有钱
我是高中生毕业,没考上大学,怎么能得到大学
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?