声明下,这是原题最重要的部分,此处X的值一直为1 ,该函数执行三次return(x*y+z),执行结果为什么是34,54,74?求详细解答,另外 static int z=3 怎么理解?
...int z=3; y=y+10; z=z+20; return(x*y+z);}
return 11*1+23;所以第一次34;第二次:y=1;z=23;y=y+10; \/\/ y = 11 z=z+20; \/\/z =43 return 11*1+43;所以第二次54;第三次:y=1;z=43;y=y+10; \/\/ y = 11 z=z+20; \/\/z =63 return 11*1+63;所以第二次74.具体原因就是你的问题:static int z=...
...int fun(int x) { int y=1; static int z=4; z+=1;++y; return(x+...
z是静态变量,所以第一次调用fun时的值为4,第二次为5,第三次为6!而y是局部变量,每次调用fun时的值都是1!所以结果是8 , 10 ,12
...程序执行结果,#include <stdio.h> int fun(int x) { int y=1...
注意z的类型是static的,所以z的值是固定的!
int main() {int x=10; int y=x++; printf("%d,%d\\n",(x++,y),y++...
也可能先算完整个y++再算(x++, y)则输出变成11,10了,依赖于编译器,不必深究。
...void main() { int x,y; for (x=1,y=1;x+y<=100;x++,y++)
\/*你判断的是*\/(x%10==0)\/*但你输出的是*\/x+y \/*应该改成*\/((x+y)%10==0)
c语言求教
详情请查看视频回答
...fun(int x, int y) {int z; z=x>y?x:y; return(x+z); } main...
a-b=5,b+c=4 fun(5,4)即x=5,y=4,执行fun函数 由z=x>y?x:y 得z=5,return(x+z);得最后的值为5+5=10 还不懂的话就加我的QQ602356234
...int a=2; int f(int n) {static int a=3; int t=0; if(n%2){stat...
程序运行后的输出结果是 __29___。选答案C
int main() {int x=10; int y=x++; printf("%d,%d\\n",(x++,y),y++...
(x++, y)它是一个逗号表达式,整个表达式的结果是最后一个表达式即y的值。
...int fun(int a) {int b=0;static int c=3; b++;c++; return(a+b...
答案是789,如果你在输出里面加上一个空格的话就是 7 8 9,完。