c语言提供了三种形式的if语句:
平顺网站制作公司哪家好,找创新互联!从网页设计、网站建设、微信开发、APP开发、成都响应式网站建设公司等网站项目制作,到程序开发,运营维护。创新互联从2013年成立到现在10年的时间,我们拥有了丰富的建站经验和运维经验,来保证我们的工作的顺利进行。专注于网站建设就选创新互联。
1、if(表达式)语句。
例如:if(xy)printf("%d",x);
此时,如果表达式为真,则执行printf语句。
2、if(表达式)语句1 else 语句2
例如:
if(xy)printf("%d",x);
else printf("%d",y);
此时,如果xy成立为真,则执行语句printf("%d",x),然后直接跳过else,同时也跳过语句printf("%d",y),去执行之后的语句。
如果xy不成立为假,则不执行语句printf("%d",x),执行语句printf("%d",x)。
3、if(表达式1)语句1
else if(表达式2)语句2
else if(表达式3)语句3
else if(表达式m)语句m
else 语句 n
此时,哪个表达式为真,则运行哪个if后面的语句。如表达式3成立为真,执行语句3。
在每个语句中,可以有多个语句,但需要加上大括号
例:if(xy){printf("%d",x);break;}
IF函数的参数:
(1)Logical_test 表示计算结果为 TRUE 或 FALSE 的任意值或表达式。
例如,A10=100 就是一个逻辑表达式,如果单元格 A10 中的值等于 100,表达式即为 TRUE,否则为 FALSE。本参数可使用任何比较运算符(=(等于)、(大于)、=(大于等于)、=(小于等于等运算符))。
(2)Value_if_true表示 logical_test 为 TRUE 时返回的值。
例如,如果本参数为文本字符串“预算内”而且
logical_test 参数值为 TRUE,则 IF 函数将显示文本“预算内”。如果 logical_test 为 TRUE 而
value_if_true 为空,则本参数返回 0。
(3)Value_if_false表示 logical_test 为 FALSE 时返回的值。
例如,如果本参数为文本字符串“超出预算”而且
logical_test 参数值为 FALSE,则 IF 函数将显示文本“超出预算”。如果 logical_test 为 FALSE 且忽略了
value_if_false(即 value_if_true 后没有逗号)。
这个是条件编译命令,表示SPEND为真时,下面的语句才能加入编译器进行编译,为假时,下面的语句不参与编译。可以去掉defined
#if 1 #if defined(SPEND) #if 0 #if defined(SPEND)
#endif和 #endif 当SPEND为真时,效果一样, #endif 和 #endif 当SPEND为假时,效果一样。
比如:
main()
{
char a[]="a参加了编译";
char b[]="b参加了编译";
#if defined(M)
printf("%s\n",a);
#endif
printf("%s\n",b);
}
当M为真时,编译器先把代码变成:
main()
{
char a[]="a参加了编译";
char b[]="b参加了编译";
printf("%s\n",a);
printf("%s\n",b);
}
再编;
当M为假时,会变成这样再编:
main()
{
char a[]="a参加了编译";
char b[]="b参加了编译";
printf("%s\n",b);
}
if语句的一般形式如下:
if(表达式)语句1
[else语句2]
if语句中的“表达式”可以是关系表达式、逻辑表达式,甚至是数值表达式。其中最直观、最容易理解的是关系表达式。所谓关系表达式就是两个数值进行比较的式子。
例如:
if(xy)
printf("%d",x);
else
printf("%d",y);
扩展资料
if-else语句引入了一种二义性问题称为空悬else(dangling-else)问题,这种问题出现在当if子句多于else子句时。问题是这些else子句分别和哪一个if子句匹配。
例如:
if(minVal=ivec[i])
if(minVal==ivec[i])
++occurs;
else
{
minVal=ivec[i];
occurs=1;
}