1. 当c语言中if语句中的条件表达式为常量或赋值表达式时的意义,分别举例解释

//我举个例子你就明白了
//赋值运算符=运算优先级是从右到左,然后看下面代码
inta,b;
b=(a=1);
//编译器编译得到如下代码:
mov DWORDPTR_a$[ebp],1
mov eax,DWORDPTR_a$[ebp]
mov DWORDPTR_b$[ebp],eax
①a=1
②b=a
如此推断,(a=1)的值即a的值,而a的值为1

所以if(1)不用说了,非零成立.
那么if(a=1)也不用说了吧?表达式的值是a,而a=1,相当于if(1),非零成立.

2. c语言的If表达式可以有赋值语句吗

可以,但是无意义,所以还是新手常犯错误

3. C语言中if语句,如果上面赋值a=0,if(a=0)括号中条件是真还是假

你问题中的if(a=0)这个if判断的表达式是赋值操作,正常运行下一直是为真的

4. C语言第十二题为什么选C,if里面赋值语句什么意思

你这题白送的一样都能答错,明显开始已经给int a b c赋值了给了个if语句如果a=b+c那么输出函数printf会输出一段话Equal!然后/n转入下一行,如果a=b+c等式不成立也就是5不等于0+0那么就执行else语句 printf,接着输出Not equal!英语也就是不等于的意思,那么由于if语句不符合自然就执行后面的语句

5. C语言 判断直接赋值问题

首先判断y是否大于z,若大于,则执行 X+2这个语句,并把X+2的值赋给X
若小于,则先执行X-2,然后将X-2的值赋给X,
然后执行逗号表达式,得到的值为2(最后一个,但对结果没有影响,由于=的优先级要大于逗号表达式的优先级,所以语句会先赋值,然后进行逗号运行)

6. C语言问题:一个if语句后面如何跟两个赋值语句

if (x1)
{
d1 <=~d1;

sel = 1;

}

用大括号把想要一起执行的语句框起来就行了,加油

7. C语言,if(表达式)中,表达式如果是一个赋值语句,这个if就会恒真吗

非零即真,例如
if(a=5)
{
b=3;
c=5;
}
else d=3;
这个语句没有语法错误(可能会有警告),是可以执行的。
但是这个语句永远没有机会执行else部分。
a=5赋值表达式的计算结果就是5,当这个表达式出现在if语句逻辑表达式位置上的时候,它的计算结果是被当作逻辑值处理的,在C语言中用整型数表示逻辑量,非零表示“真”,所以这是一个永真式;这个if的逻辑条件永远不会为假。
也就是说,这里所表达的逻辑条件并不是“a的内容是否等于5”,而是向变量a中送入数据5。

8. C语言if语句

if-else分别搭配一条语句,如果有多条语句就要用花括号扩起来。


intmain(void){
inta=0;
if(1)
a=3;//这是专一条语句,if为真,执属行赋值3
if(0)
a=4;//这是一条语句,if为假
else//搭配上方的if
a=5;//这是一条语句,上方if为假,执行赋值5
//所以最终a值为5
}
intmain(void){
inta=0;
if(1){//if为真,整个花括号里的语句都要执行
a=3;//赋值3
if(0)//执行if,为假
a=4;//这条语句不执行
}
else//上方if为真,不执行else
a=5;
//所以最终a值为3
}

9. c语言初学者。if里面,赋值给字符串的问题

你这么定义字符数组 的话只有 一个元素 哟
char input1[]="\0";//变量声明
char input2[]="\0";
字符串比较 请用 strcmp函数 头文件 string.h

10. c语言中if语句条件为赋值语句

当if语句中的条件为赋值语句时,实际上是将赋值后的结果与0进行比较。比专如下面的代码:

#include<stdio.h>
intmain()
{
inta;
if(a=0)printf("helloworld ");
return0;
}

它等价属于:

#include<stdio.h>
intmain()
{
inta=0;
if(a==0)printf("helloworld ");
return0;
}

这个过程可以通过vc6.0的反汇编代码详细看到。

一条mov赋值指令,一条cmp比较指令,比较的对象是0和a的值。