c语言程序:运行结果是最终为什么是20,0?

2025-05-10 06:37:37
推荐回答(3个)
回答1:

。。因为把x的值赋给t的那个语句t=x是受if语句控制的,但是条件不成立,所以那一句没有执行啊
实际就是这样
{
int x=10,y=20,t=0;
if(s==y) //不成立
{
t=x;
}
x=y;
y=t;
}
所以x的值是y的值,y的值是t的值

回答2:

//因为if后面没有括号,默认的,if后面的第一句话,是属于if成立之后执行的,所以
//原来的code,相当于
#include "stdio.h"
    main()
{   int  x=10, y=20,  t=0;
    if  ( x == y ){ //这里加上大括号应该就清楚了
      t=x ;  //因为x!=y所以这个没有执行
    }
    x=y ;  //之后x = 20;
    y=t ;  //y的结果是0
   printf( "%d %d\n",x,  y );

}

回答3:

#include "stdio.h"
main()
{ int x=10, y=20, t=0;
if ( x == y ) t=x ; x=y ; y=t ;
printf( "%d %d\n",x, y );

}

因为if 后面只有一句 t=x; 且这句不执行。

x= y; x=20

y=t ; y=0,t=0