程序综合题型
9.编写一个程序,对用户输入的任意一组数字,如{ 3, 1,4,7,2,1, 1,2,2},输出其中出现次数最多的数字,并显示其出现次数
#include <stdio.h> int main() { int arr[]={3,1,4,7,2,1,1,2,2,2}; int len=10; for(int i=len-1;i>0;i--){ for(int j=0;j<i;j++){ if(arr[j]>arr[j+1]){ arr[j]=arr[j]+arr[j+1]; arr[j+1]=arr[j]-arr[j+1]; arr[j]=arr[j]-arr[j+1]; } } } int k=0,nums[len]; for(int i=0;i<len;i++){ if(k==0||arr[k-1]!=arr[i]){ nums[k]=1; arr[k++]=arr[i]; }else{ nums[k-1]=nums[k-1]+1; } } int max_num=nums[0],val=arr[0]; for(int i=0;i<k;i++){ if(max_num<nums[i]){ max_num=nums[i]; val=arr[i]; } } printf("%d:%d",val,max_num); return 0; }
//这组数字都是一位数 //{ 3,1,4,7,2,1,1,2,2 } #include <stdio.h> int main() { int i, n, a[10] = { 0 }; while (scanf("%d", &n) == 1 && n != -1) a[n]++; //输入 -1 结束输入 n = a[0]; for (i = 0; i < 10; i++) if (n < a[i]) n = a[i]; for (i = 0; i < 10; i++) if (n == a[i]) printf("%d %d\n", i, a[i]); return 0; }