是的,输出是4!
程序执行到
#include
main()
{
int a=3; //把3赋值给a
if(a=4) // 把4赋值给a , 因为 if(4)为真,则执行真的
printf("a=%d",a); // 部分。
有效程序就是上面这部分。
分析:
#include
main()//定义主函数。
{//函数开始。
int a=3;//定义一个整数a,值为3。
if(a=4)//假设a的值是4,C语言中0以外的逻辑值都是1,都是真。
printf("a=%d",a);//输出整数4。
else//否则,即逻辑值是0。
printf("a=%d",-a);//输出整数-4。
}//函数结束。
-----------------------------------------------
因为你把a==4 写成了a=4 那么IF的条件就永远为真啦
所以if语句就会执行printf("a=%d",a); 语句啦
希望你能进步...
-----------------------------------------------
C语言顺序执行,先把3的值赋给a,再把4的值赋给a条件为真执行printf("a=%d",a);
==是比较
=是赋值,赋值之后只要不为0即成立。