有以下程序: 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",sum);

admin2010-12-10  33

问题 有以下程序:    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",sum);    }    执行后的输出结果是______。   

选项 A、6     
B、7
C、8     
D、9

答案C

解析  在fun((a++,b++,a+b),c++)函数中先计算括号内的“(a++,b++,a+b)”逗号运算符,整个逗号表达式最后的值为5;接下来调用fun()函数,此时原句变为fun(5,c++)。运算c++表示在使用完c后再将c的值加1,函数的返回值为8。
转载请注明原文地址:https://jikaoti.com/ti/SXB0FFFM
0

最新回复(0)