c语言中if(a=5)对于这种表达是什么意思啊?? C语言中if(!a)表示什么意思

作者&投稿:尤钱 (若有异议请与网页底部的电邮联系)
这个代码没有上下文不好说的太绝对,不过如果这是你看到的能正确运行结果的代码,那么应该是这样理解。
先赋值,再执行一个if语句,不过,这样的写法真是不好,如果是我,我就说它是错误的。
你可以运行一下下面的代码就想清楚了。#include<stdio.h>
int main()
{
int a = 1 ;
int b = 2 ;
if(a=2)
{
b==a?printf("a=2"):printf("a=1");
}
return 0 ;
}
~
~
~
~
~
~
~
~
~
~
~
~
:set nonu 1,1 全部

合法

if(a=5)
等价于
a=5;
if(a)

c语言语法很灵活,虽然这样做没错,但因为不易读懂,不提倡。

不会出错,其结果永远是1,if判断总是正确,同时也把a赋值为5

你说的是if(a==5)吧?判断a是否和5相等

~

C语言中 if (a=常数) 什么意思? (一个等于号)
答:“="在C中是赋值号而非等于的意思,此句意思是把3赋给a,即a的值为3。非0为真,此时if条件永远成立,直正判断a是否等于3的语句是if(a==3),双等号

C语言中的if(1)是什么意思啊
答:)。所以f(0)等价于f(1<2)等价于f((1+4)<9),f(!1)等,不执行。if(1)相当if(5),if(1<2);int a=0;if(1)执行;a=3;结果a=3;if(0)不执行跳过;a=4;else a=5;执行a=5;...

计算机四级考试题库及答案计算机等级考试四级软件测试工程师练习_百 ...
答:5.因果图方法是根据___之间的因果关系设计测试用例。 (A)输入和输出 (B)...if((a>0||b<0)) k=k+a; else k=k+b; 考试大(www.Examda。com...将上述因果图转换为判定表,如表所示,每一列可以作为确定测试用例的依据。

在C语言的if 语句中,用作判断的表达式是( )a关系表达式 b逻辑表达式...
答:比如 int a=5, b=6;a>b是关系表达式,结果是逻辑值false,但false可以看作是逻辑值,也可以看作是逻辑表达式。而a-b则是算术表达式,三者均可以做为if的判断条件。所以即使在C#语言中,严格区分的情况下,关系表达式...

在C语言的if 语句中,用作判断的表达式是( )a关系表达式 b逻辑表达式...
答:2、if(表达式)语句1 else 语句2。这个表达式可以是任意表达式,如果表达式为 true,则 if 语句内的代码块将被执行。如果表达式为 false,则 if 语句结束后的第一组代码(闭括号后)将被执行。C 语言把任何非零和非空...

用c编程时if(a)是什么意思?if(!a)又是什么意思?
答:if(!a)表示a为假时执行后续语句。if (a) 中 a 通常为布尔变量,Boolean Variable (布尔型变量) 是有两种逻辑状态的变量,它包含两个值:真和假。如果在表达式中使用了布尔型变量,那么将根据变量值的真假而赋予整型值1...

求c语言基础知识
答:(2)a = 3;b = 5;c =++ a* b ;d =a + +* b; 对于c=++a*b来说,按表中所列顺序,+ +先执行,*后执行,所以+ + a执行后,a的值为4,由于+ +为前置运算,所以a的值4参与运算,C的值计算式为4*5=20而不是3*5...

C语言 原因
答:else a=6;//输出,此时a=6,b=0,c=250;if(c=(b==0))//b==0为真,所以c=1,这里的c为布尔型,转换为int 型的,a=5;//此时a=5,b=0,c=1 if(a=c=b) a=4;//这里将b的值0赋给a和c,此时a=0...

if(a=b)和if(a==b)的区别是什么阿
答:a=5,b=7; 那么a=b后,a就等于7了。a==b,意思是判断a,b的只值是否相等;比如a=5,b=7,那么a==b就会返回flase;如果a=5,b=5那么a==b就会返回true;简单的说“=”是数字运算符,而“==”逻辑判定符。

c语言if语句的用法
答:c语言提供了三种形式的if语句:1、if(表达式)语句。例如:if(x>y)printf("%d",x);此时,如果表达式为真,则执行printf语句。2、if(表达式)语句1 else 语句2 例如:if(x>y)printf("%d",x);else printf("%d...