当前位置:首页 > 嵌入式培训 > 嵌入式学习 > 讲师博文 > C语言:if-else语句

C语言:if-else语句 时间:2019-03-29      来源:华清远见

嗨,今天咱们讲讲C语言控制语句里的条件选择,主要总结下if else语句。

咱们生活里经常会有这样的场景,明天该怎么穿呢,得考虑下具体的天气。如果是晴天,温度还不错,可以穿T恤;如果是阴天,就得穿夹克,当然刮大风就得加一件风衣了。根据不同的情况,经常会有不同处理方式。编程也会遇到这样的情况,提供的数据符合目前的需求,可以实现后续的工作,如果不符合,就得处理其他的安排。所以说编程和生活其实没有界限,可以说编程来源于生活。

在C语言中,处理这种选择场景的语法叫做条件语句,条件语句有两种形式:if else和switch case。其中判断情况的条件可以罗列更为详细具体,选择情况可以根据需要叠加的语法是if else。当然switch case很好用,不过应用场景是判断情况比较多的时候,可以提高代码质量。

那么,我们来聊下怎么用,书写标准:

if (表达式){

语句块1

}else{

语句块2

}

注意啦,上面是语法规范,怎么用具体的细节在下面分析:

1. 语句块:当有若干条语句时,必须用{…}括起来。

2. 表达式:

if语句的表达式一般情况下为逻辑表达式或关系表达式。

如:

if( a == b && x == y ) {

printf(“a=b,x=y”);

}else{

printf(“a!=b, x!=y”);

}

也可以是任意类型(包括整型、实型、字符型、指针类型),表示“真”和“假”的逻辑情况。

例如:if(‘a’) printf(“%d”,’a’);

if(‘3’) printf(“OK!”);

注意:

数值在if里只有“非零”与“零”的用法;

请区分if(x=1)与if(x= =1)的不同,=是赋值符号, ==是逻辑判断符号。

当然规范的形式只适用用于条件逻辑比较单一的情况,以下是一些根据实际情况做出的一些变形形式。

1. 简化形式

if(表达式) {

语句块

}

例如:

if( x>y ) {

printf(“%d”,x);

}

2. 阶梯形式

if(表达式1) 语句块1

else if(表达式2) 语句块2

else if(表达式3) 语句块3

else if(表达式4) 语句块4

...

else 语句块n

例如:

int main(int argc, const char *argv[])

{

int a;

scanf("%d", &a);

if( a<0 ){

printf("a < 0!\n");

}else if( a == 0){

printf("a == 0!\n");

}else{

printf("(a > 0! \n");

}

return 0;

}

3. 嵌套形式

if(表达式){

if(表达式){ 语句块1 }

else{ 语句块2 }

}else{

if(表达式){ 语句块3 }

else{ 语句块4 }

}

例如:

int main(int argc, const char *argv[])

{

int a , b, c;

int max;

scanf("%d%d%d", &a, &b, &c);

if( a >= b ) {

max = a;

if( max < c ) {

max = c;

}

} else {

max = b;

if( max < c ) {

max = c;

}

}

putchar(10);

return 0;

}

这里再提一种特殊情况:

if(表达式){

语句块1;

}

if(表达式){

语句块2

}

if(表达式){

语句块3;

}

...

else{

表达式4;

}

这种情况的条件语句组合中,else要注意是后最后一if结合。

好啦,if else的用法讲到这里,多做实践应用,尝试多种场景。当然因为其可以组合的特性,到实际实践中组合形式很自由,可能会有迷惑性,其实本质很简单,就是上面的几种语法,不要被骗了,要仔细辨别哦。

上一篇:java开发:Java环境搭建

下一篇:Linux内核的栈回溯与妙用

热点文章推荐
华清学员就业榜单
高薪学员经验分享
热点新闻推荐
前台专线:010-82525158 企业培训洽谈专线:010-82525379 院校合作洽谈专线:010-82525379 Copyright © 2004-2018 北京华清远见科技发展有限公司 版权所有 ,京ICP备16055225号,京公海网安备11010802025203号