scanf("%lf%d",&x,&exp)这是一个函数,而且这个函数会反回值,好像反回值的规则是,只输入一个数反回1,输入2个数反回2。因此scanf("%lf%d",&x,&exp)==2就是判断是否输入了2个数,==的作用是判断是否相等,比如a==b的作用是判断a是否等于b,同样a==2是判断a是否等于2,而a=2是对变量a赋值为2。对于==的结果是1或者0,也就是布尔值的真或者假。
第2问,
(status=scanf("%d,&code"))!=1
表达式是这样的,就是判断scanf的反回值是否为1,如果为1,则表达式的值为真,在C中用1表示,如果为假则为假,在C中用0表示。然后再与后面的||运算。至于你说的! =1好像没什么差别吧,只是中间多了一个空格。
1、==2表示输入了两个值分别赋给两个变量,你若只输入一个值赋给变量,按回车,程序不会执行while语句。
2、!=是不等于的意思,!=1是不等于1的意思,!=是用中文输入法写的不等于,写程序的时候,最好别用中文输入法。意思是若没有输入一个值赋给变量code。
==表示判断是否相等
=表示赋值
!=表示判断是否不不相等
1里==2意思是scanf函数的返回值是不是跟2相等
2里!=意思是括号里的内容也就是变量status的值是否跟1不等
关于scanf函数
scanf返回值等于正确输入的变量的个数
1. 答:==2 是恒等于2的意思,不是赋值,相当于数学里面的等于2的意思。
2. 答:“!=1“是非1的意思, 也就是假的意思。 在计算机里面1为真,0为假, 非真就是假了
一个等于是同赋值,就是给值
而两个等于是逻辑判断是否等于
int
x
=
10,y
=
11;//赋值,就是给值
if(x
==
y);//判断x是否等于y