課程
/后端開發(fā)
/C
/C語言入門
int getAvgScore(int score[])
return gettotalscore
這里為什么返回的是總分的函數(shù)值 ?而且平均值到底是怎么出來的?我實在是沒弄明白
2015-12-12
源自:C語言入門 6-12
正在回答
#include?<stdio.h> #define?N?10 int?totalscore(int?*score); int?maxscore(int?*score); int?minscore(int?*score); int?averagescore(int?*score); void?sort(int?*a,?int?left,?int?right); int?main() { ????int?score[N]={67,98,75,63,82,79,81,91,66,84}; ????printf("totalscore:%d\n",totalscore(score)); ????printf("maxscore:%d\n",maxscore(score)); ????printf("minscore:%d\n",minscore(score)); ????printf("averagescore:%d\n",averagescore(score)); ????sort(score,0,9); ????int?i; ????for?(?i?=?0;?i?<?10;?++i) ????{ ????????printf("%d?",score[i]); ????????/*?code?*/ ????} ????return?0; } int?totalscore(int?*score) { ????int?ts=0,i=0; ????for(i=0;i<10;++i) ????{ ????????ts=ts+score[i]; ????} ????return?ts; ???? } int?maxscore(int?*score) { ????int?max; ????max=score[0]; ????int?i=1; ????for(i=1;i<10;++i) ????{ ????????if?(score[i]>max) ????????max=score[i]; ????} ????return?max; } int?minscore(int?*score) { ????int?min; ????min=score[0]; ????int?p=sizeof(score); ????while(p>0) ????{ ????????p--; ????????if?(score[p]?<?min) ????????min=score[p]; ????} ????return?min; } int?averagescore(int?*score) { ????int?ts=0,i=0; ????for(i=0;i<10;++i) ????{ ????????ts=ts+score[i]; ????} ????return?ts/10; } void?sort(int?*a,?int?left,?int?right) { ????if(left?>=?right)/*如果左邊索引大于或者等于右邊的索引就代表已經(jīng)整理完成一個組了*/ ????{ ????????return?; ????} ????int?i?=?left; ????int?j?=?right; ????int?key?=?a[left]; ????? ????while(i?<?j)???????????????????????????????/*控制在當(dāng)組內(nèi)尋找一遍*/ ????{ ????????while(i?<?j?&&?key?>=?a[j]) ????????/*而尋找結(jié)束的條件就是,1,找到一個小于或者大于key的數(shù)(大于或小于取決于你想升 ????????序還是降序)2,沒有符合條件1的,并且i與j的大小沒有反轉(zhuǎn)*/? ????????{ ????????????j--;/*向前尋找*/ ????????} ????????? ????????a[i]?=?a[j]; ????????/*找到一個這樣的數(shù)后就把它賦給前面的被拿走的i的值(如果第一次循環(huán)且key是 ????????a[left],那么就是給key)*/ ????????? ????????while(i?<?j?&&?key?<=?a[i]) ????????/*這是i在當(dāng)組內(nèi)向前尋找,同上,不過注意與key的大小關(guān)系停止循環(huán)和上面相反, ????????因為排序思想是把數(shù)往兩邊扔,所以左右兩邊的數(shù)大小與key的關(guān)系相反*/ ????????{ ????????????i++; ????????} ????????? ????????a[j]?=?a[i]; ????} ????? ????a[i]?=?key;/*當(dāng)在當(dāng)組內(nèi)找完一遍以后就把中間數(shù)key回歸*/ ????sort(a,?left,?i?-?1);/*最后用同樣的方式對分出來的左邊的小組進(jìn)行同上的做法*/ ????sort(a,?i?+?1,?right);/*用同樣的方式對分出來的右邊的小組進(jìn)行同上的做法*/ ???????????????????????/*當(dāng)然最后可能會出現(xiàn)很多分左右,直到每一組的i?=?j?為止*/ }
你把你的代碼完整的貼一下,你給的代碼太少,看不明白哦
舉報
C語言入門視頻教程,帶你進(jìn)入編程世界的必修課-C語言
1 回答求大神講解
2 回答求慕網(wǎng)大神講解
2 回答求大神詳細(xì)講解
1 回答求大神講解一下
2 回答哪里錯了 求大神講解
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網(wǎng)安備11010802030151號
購課補貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動學(xué)習(xí)伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號
2015-12-12
2015-12-12
你把你的代碼完整的貼一下,你給的代碼太少,看不明白哦