5 回答

TA貢獻(xiàn)883條經(jīng)驗(yàn) 獲得超454個(gè)贊
其他人已經(jīng)解答了為什么第四次輸出是亂數(shù)的問題。
但我很奇怪于你之前的回復(fù),不是該不該“把 %d到%d的和是%d 放到printf里面”,而是想要問你:為什么要在三次調(diào)用 sum 后又調(diào)用 printf 呢?
sum 函數(shù)中已經(jīng)有 printf 輸出了,你又額外調(diào)用一次的意義何在呢?

TA貢獻(xiàn)4條經(jīng)驗(yàn) 獲得超7個(gè)贊
樓主你好,因?yàn)槟愕膕um()函數(shù)里調(diào)用了屏幕輸出函數(shù)printf,你在主函數(shù)一共調(diào)用了三次sum()函數(shù),所以你會(huì)看到前面的三行輸出。而第四行輸出,是因?yàn)槟阍谥骱瘮?shù)里最后又調(diào)用了一次print()函數(shù),所以會(huì)顯示這一行,但是你只提供了數(shù)字輸出的格式“%d”卻沒有賦值,所以系統(tǒng)會(huì)賦值一個(gè)隨機(jī)數(shù),這也是第四行的數(shù)字亂七八糟的原因。
你可以將你的main函數(shù)增加個(gè)小東西,改成下面這樣:
int main()
{
int i=1,j=2;
sum(1,10);
sum(20,30);
sum(35,45);
printf("%d到%d的和是%d.\n",i,j,i+j);
}
- 5 回答
- 0 關(guān)注
- 2010 瀏覽
添加回答
舉報(bào)