習題7-2 求一批整數中出現最多的個位數字 (20分)


給定一批整數,分析每個整數的每一位數字,求出現次數最多的個位數字。例如給定3個整數1234、2345、3456,其中出現最多次數的數字是3和4,均出現了3次。

輸入格式:

輸入在第1行中給出正整數N(≤),在第二行中給出N個不超過整型范圍的非負整數,數字間以空格分隔。

輸出格式:

在一行中按格式“M: n1 n2 ...”輸出,其中M是最大次數,n1、n2、……為出現次數最多的個位數字,按從小到大的順序排列。數字間以空格分隔,但末尾不得有多余空格。

輸入樣例:

3
1234 2345 3456
 

輸出樣例:

3: 3 4



#include<stdio.h>
#define MAXN 10
int main(void)
{
    int n,number,index,sum,i;
    int a[MAXN]={0};        //數組各初值為0 
    
    scanf("%d",&n);
    for(i=0;i<n;i++){
        scanf("%d",&number);
        while(number){
                index = number % 10;
                a[index]++;        //記錄每個數字出現次數 
                number = number / 10;
        }
    }
    
    sum = 0;
    for(i=0;i<MAXN;i++)
        if(a[i]>sum)
            sum = a[i];
    printf("%d:",sum);
    
    for(i=0;i<MAXN;i++)
        if(sum==a[i])    
                printf(" %d",i);    
    
    return 0;
    
}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM