這是因?yàn)間etchar前面有一個(gè)scanf("%lf",a);
我們提供的服務(wù)有:網(wǎng)站設(shè)計(jì)、網(wǎng)站建設(shè)、微信公眾號(hào)開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、西夏ssl等。為千余家企事業(yè)單位解決了網(wǎng)站和推廣的問題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的西夏網(wǎng)站制作公司
你輸入完a的值后,是否會(huì)
輸入回車
這個(gè)回車就是一個(gè)字符啊,這個(gè)字符就被getchar當(dāng)做你輸入的字符了,所以看起來像沒有執(zhí)行,其實(shí)是執(zhí)行了。
可以在getchar()前使用
fflush(stdin);
刷新標(biāo)準(zhǔn)輸入緩沖區(qū),把輸入緩沖區(qū)里的東西丟棄
這樣就可以輸入字符了。
只要沒啟動(dòng)看門狗,正常編程就行了,然后就在被調(diào)用函數(shù)里等待按鍵,但是不能用死循環(huán),那就出不來了,可以用while語句,判斷按鍵是否按下,按下帶返回值返回,沒有按鍵繼續(xù)檢測按鍵。
main函數(shù)中下面這一段
void average1(float score[NUM_std][NUM_course]);
void average2(float score[NUM_std][NUM_course]);
void max(float score[NUM_std][NUM_course]);
void fangcha(float score[][NUM_course]);
調(diào)用函數(shù)時(shí),應(yīng)該將參數(shù)實(shí)例化
average1(score);
average2(score);
max(score);
fangcha(score);
其實(shí)將自定義函數(shù)參數(shù)里的float去掉就行。