問題描述 :
給定乙個百分制成績t,將其劃分為如下五個等級之一:
90100為a,8089為b,7079為c,6069為d,0~59為e
現在給定的輸入中包含若干百分制成績(成績個數不超過100),請你統計五個等級段的人數,並找出人數最多的那個等級段,按照從大到小的順序輸出該段中所有人成績(保證人數最多的等級只有乙個)。
輸入說明 :
兩行,第一行為n,表示將輸入n個分數,
第二行為n個0~100的正整數,用空格隔開
輸出說明 :
第一行為5個正整數,分別表示a,b,c,d,e五個等級段的人數
第二行乙個正整數,表示人數最多的等級段中人數
接下來一行若干個用空格隔開的正整數,表示人數最多的那個等級中所有人的分數,按從大到小的順序輸出。
害,總是折騰半天才出來
2.先把成績排序從大到小–>開闢相同大小的陣列,陣列初始大小均為0,記錄等級x第一次出現的下標i,屬於等級x的個數count存在b[i]中–>輸出陣列中不為0的元素值(這分別表示a,b,c,d,e五個等級段的人數),輸出b[i]中的最大值(這就求出來了 人數最多的等級段中人數),再從陣列a的下標i開始向後輸出b[i]個值(這表示人數最多的那個等級中所有人的分數,按從大到小的順序輸出)—>大功告成
#include
#include
//從大到小進行排列
void
sort
(int a,
int n)
a[j+1]
=key;}}
}int
main()
sort
(a,n)
; j=0;
for(k=
0;kelse
if(a[i]
>=
80&& a[i]
<90)
}else
if(a[i]
>=
70&& a[i]
<80)
}else
if(a[i]
>=
60&& a[i]
<70)
}else
b[k]
=count;
k=i;
}//a,b,c,d,e五個等級段的人數即對應b中元素值不為0的值
max=0;
k=0;for
(i=0
;i(b[max]
printf
("\n");
printf
("%d\n"
,b[max]);
//人數最多的那個等級中所有人的分數,按從大到小的順序輸出
for(i=max;i;i++
)printf
("\n");
return0;
}
東華研究生複試 31 輸出公尺字形
問題描述 根據輸入的正整數n 公尺字形由乙個 2n 1 2n 1 的矩陣組成,矩陣包含從大寫a開始的n個字母 例如 n 3時,包含a,b,c n 4時,包含a,b,c,d。矩陣的正中間為n個字母中字典序最大的那個,從這個字母開始,沿著西北 正北 東北 正西 正東 西南 正南 東南八個方向各有一條由大...
研究生複試 17 質因數
問題描述 將乙個正整數n 133 5。輸入說明 輸入乙個正整數 輸出說明 按照範例輸出。其中的質因數的輸出順序按照從小到大的順序。如果輸入的整數本身是質數,則輸出形式為 3 3輸入範例 66輸出範例 66 2311 include include 判斷是不是素數 intsushu int x ret...
面試 推免研究生複試面試
第二次面試總結 推免研究生複試面試 複試面試分兩個部分。第乙個部分就是面試英語。老師給一段或多段英文短文,讓我朗讀。第一遍過後,老師指出了哪些單詞讀得不對。然後,讓我再讀一遍。兩遍讀完之後接著就是翻譯整篇短文。發音,翻譯錯誤百出。其中一些很常見的單詞讀錯或忘掉了它的意思。出現錯誤的單詞有typica...