当前位置:首页 » 六六互联 » 正文

if 语句的嵌套与嵌套匹配原则

278 人参与  2022年09月04日 17:31  分类 : 六六互联  评论

if 语句的嵌套与嵌套匹配原则

if 语句的嵌套与嵌套匹配原则

if语句中的执行语句又是if语句时,则构成了if 语句嵌套的情形。其一般形式可表示如下:

1if(表达式1)

    if表达式2

语句序列1

else

语句序列2

2if(表达1)

if表达2

语句序列1

else

语句序列2

else

语句序列3

3if(表达式1)

语句序列1

else

if(表达式2

语句序列2

else

语句序列3

4if(表达式1)

if(表达式2

语句序列1

else

语句序列2

else

if(表达式3

语句序列3

else

语句序列4

if语句嵌套时,else子句与if的匹配原则:else子句总是在它上面、距它最近、且尚未匹配的if配对。例如:


if(a==b)

if(b==c)

printf(“a==b==c”);

else

printf(“a!=b”);


因为else子句总是与在它上面距它最近、尚未匹配的if配对,因此,次程序中的else子句会与if(b==c)配对而不是与if(a==b)配对,这样容易发生错误。为了实现正确的配对方法,一般加上{},可作如下修改:

if(a==b)

{

   if(b==c)

         printf(“a==b==c”);

}

else

         printf(“a!=b”);

3-7】比较两个数的大小关系。


#include <stdio.h>

int main(){

     int a,b;

     printf("please input a,b:    ");

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

     if(a!=b)

     if(a>b)  printf("a>b\n");

     else     printf("a<b\n");

     else     printf("a=b\n");

     return 0;

}

为了增强程序的可读性,一般情况下较少使用if语句的嵌套结构

if-else-if分支语句改写程序:

#include <iostream.h>

     #include <stdio.h>

     int main(){

     int a,b;

     printf("please input a,b: ");

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

     if(a==b) printf("a=b\n");

     else if(a>b)  printf("a>b\n");

     else  printf("a<b\n");

     return 0;

    }

程序运行结果:

please input a,b:34 67

a<b


来源:服务器,转载请保留出处和链接!

本文链接:http://www.cau168.com/post/140.html

抗投诉服务器
if 语句  嵌套  匹配  原则  

六六互联长期出售外贸服务器

<< 上一篇 下一篇 >>

六六互联

服务器 | 主机

Copyright 六六互联.Some Rights Reserved.www.ic.vip