問題描述
編寫乙個程式,讀入一組整數,這組整數是按照從小到大的順序排列的,它們的個數n也是由使用者輸入的,最多不會超過20。然後程式將對這個陣列進行統計,把出現次數最多的那個陣列元素值列印出來。如果有兩個元素值出現的次數相同,即並列第一,那麼只列印比較小的那個值。
輸入格式:第一行是乙個整數n,n £ 20;接下來有n行,每一行表示乙個整數,並且按照從小到大的順序排列。
輸出格式:輸出只有一行,即出現次數最多的那個元素值。
輸入輸出樣例
樣例輸入
5100
150150
200250
樣例輸出
這個題還是很簡單的,畢竟我個學渣都做對了
雖然錯了好幾遍
剛開始看這個題的思路就是乙個二維陣列,第乙個為輸入的數,第二個表示輸入的次數。。
但是寫了一半後發現向二維陣列中添第二個數時顯得略有些麻煩
於是我就拿起我的衛生紙(草稿紙,寫上去跟舒服
於是決定要弄兩個陣列,乙個表示輸入的數a[21],另乙個表示輸入的次數b[21]
然後把a[0]與其他的進行比較,看是否相等,相等的話,就讓b[0]++;
就這樣可以得出次數
然後再比較陣列b就可以了
**如下:
#include #include int main()
; int n,i,j,max,bj=0;
scanf("%d",&n);
if(n>0)
}printf("%d",a[bj]);
}return 0;
}
其實這個是我更改過的,剛開始的沒有把bj=0;
這樣如果輸入的數都不相同的話就會執行錯誤。。。
我就是在這裡錯了n多遍
加油
出現次數最多的整數
問題描述 編寫乙個程式,讀入一組整數,這組整數是按照從小到大的順序排列的,它們的個數n也是由使用者輸入的,最多不會超過20。然後程式將對這個陣列進行統計,把出現次數最多的那個陣列元素值列印出來。如果有兩個元素值出現的次數相同,即並列第一,那麼只列印比較小的那個值。輸入格式 第一行是乙個整數n,n 2...
出現次數最多的整數
問題描述 編寫乙個程式,讀入一組整數,這組整數是按照從小到大的順序排列的,它們的個數n也是由使用者輸入的,最多不會超過20。然後程式將對這個陣列進行統計,把出現次數最多的那個陣列元素值列印出來。如果有兩個元素值出現的次數相同,即並列第一,那麼只列印比較小的那個值。輸入格式 第一行是乙個整數n,n 2...
出現次數最多的整數
時間限制 1.0s 記憶體限制 512.0mb 編寫乙個程式,讀入一組整數,這組整數是按照從小到大的順序排列的,它們的個數n也是由使用者輸入的,最多不會超過20。然後程式將對這個陣列進行統計,把出現次數最多的那個陣列元素值列印出來。如果有兩個元素值出現的次數相同,即並列第一,那麼只列印比較小的那個值...