有以下程序 fun(int x,int y){return(x+y);} main() { int a=1,b=2,c=3
有以下程序 fun(int x,int y){return(x+y);} main() { int a=1,b=2,c=3,sum; sum=fun((a++,b++,a+b),c++); printf("%d\n",sum); }
A.6
B.7
C.8
D.9
正確答案:C解析:在fun((a++,b++,a+b),c++)中,先算括號(hào)內(nèi)的(a++,b++,a+b)逗號(hào)運(yùn)算,即先算出a++的值,a=2;再算出b++的值,b=3;最后算出a+b的值,a+b=2+3=5,整個(gè)逗號(hào)表達(dá)式的值為最后a+b的值即為5;接下來(lái)調(diào)用fun函數(shù),此時(shí)原語(yǔ)句變?yōu)椋簊mn=fun(5,C++);進(jìn)行運(yùn)算,c++表示在使用c以后再將c的值加1,所以結(jié)果為:5+3=8。
詞條內(nèi)容僅供參考,如果您需要解決具體問題
(尤其在法律、醫(yī)學(xué)等領(lǐng)域),建議您咨詢相關(guān)領(lǐng)域?qū)I(yè)人士。