已經用亂數取20個成績g(0-100分)想要分成0-20 20-40 40-60 60-80 80-100五組並輸出每組個數如果照下面方別寫k=0,1,2,3,4 太煩雜k=0if( (0+20*k<=g) && (g<20+20*(k+1) ) i++;printf("%d",i)如果前面加for(k=0;k<5;k++)請問後面的 i 要怎麼修改成陣列的方式靜態陣列就可以了 謝謝
2006-07-19 17:24:10 · 2 個解答 · 發問者 Anonymous in 電腦與網際網路 ➔ 程式設計
我這樣寫
for (int k = 0 ; k < 5 ; ++k)
{
if( (0+20*k
2006-07-19 18:40:48 · update #1
int count[5] = {0, 0, 0, 0, 0};
for (int k = 0 ; k < 5 ; ++k)
if( (0+20*k<=g) && (g<20+20*(k+1) ) count[k]++;
count[k]就是那組的個數囉 ^^
2006-07-19 17:39:26 · answer #1 · answered by Blythe 3 · 0⤊ 0⤋
for ()
if ()
這2列可合並成:
if (g) count[(g-1)/20]++;
else count[0]++;
而且,執行速度應該會比較快。
2006-07-20 13:01:37 · answer #2 · answered by ? 7 · 0⤊ 0⤋