出现次数最多的整数
1 #include<stdio.h> 2 3 int main() 4 { 5 int i,j; 6 int n; //用于记录要输入的整数的个数 7 int a[20]; //用于存储输入的n个整数 8 int max_num_int; //用于记录出现次数最多的整数 9 int max_num; //用于记录 max_num_int 的出现次数 10 11 //输入 12 scanf("%d",&n); //要输入的整数的个数 13 14 if(n>0&&n<=20) //0<n<=20 15 { 16 for(i=0;i<n;i++) //输入n个整数 17 scanf("%d",&a[i]); 18 19 max_num_int=a[0]; //赋初值a[0],开始假设其为出现次数最多的整数 20 max_num=0; //赋初值0,开始假设 max_num_int 出现的次数为0 21 for(i=0;i<n;i++) //遍历n个整数 22 { 23 if(a[i]==max_num_int) //判断下一个整数是否与 max_num_int相等 24 max_num++; //若相等,记录 max_num_int 的出现的次数 25 else 26 { 27 for(j=i;j<n;j++) //若不相等,找出那个整数的出现次数 28 if(a[j]!=a[i]) 29 break; 30 if((j-i)>max_num) //如果与那个整数的出现次数大于 max_num 31 { 32 max_num_int=a[i]; //更新 max_num_int 33 max_num=1; //更新 max_int 34 } 35 } 36 } 37 38 //输出 39 printf("%d",max_num_int); 40 } 41 42 return 0; 43 }