C语言条件判断语句:if、else if、else |
您所在的位置:网站首页 › c语言简单语句 › C语言条件判断语句:if、else if、else |
1)简单介绍三种形式的条件判断语句:if、else if、else
if:
if(表达式)
执行语句
if:判断表达式内容,如果为true(真),就执行语句
else if:
if(表达式)
执行语句
else if(表达式1)
执行语句1
......(很多的else if)
else if(表达式m)
执行语句m
else if:如果if的判断没有通过,则进行下面的else if,如果当前的else if判断通过,则执行当前else if的语句。如果没通过,则一直执行下面的else if判断 else: if(表达式) 执行语句 else if(表达式) 执行语句 else 执行语句else:else为最后的分支,如果在else之前的if、else if判断都没有通过就会执行else PS:在一条if条件判断中,可以有无数条else if,但是只能有一个else 2)三种形式的判断语句使用:if、else if、else if:为了可以看到结果使用printf进行显示结果 #include #include int main(void) { bool bTrue = true; if (bTrue) printf("if true!\n"); return 0; } 结果: if true! 简单讲解上面的程序:包含了stdio.h是为了使用printf函数进行格式化输出结果 包含了stdbool.h,stdbool.h是C99添加_Bool(布尔值类型)关键字新增的头文件,在stdbool.h中为我们定义了三个我们所使用到的宏: bool _Bool(布尔值类型) true 1 false 0 所以此处定义了一个_Bool(布尔值类型)变量bTrue,并且赋值true(1) 所以此处判断为真,最终printf格式化输出了true PS:_Bool(布尔值类型)占1字节内存大小 PS:判断真假,真只要不等于0,假为0 else if:为了可以看到结果使用printf进行显示结果 #include #include int main(void) { bool bTrue = true; bool bFalse = false; if (bFalse) printf("if true!\n"); else if(bFalse) printf("else if true!\n"); else if (bTrue) printf("else if true!\n"); return 0; } 结果: else if true! 简单讲解上面的程序:定义了一个_Bool(布尔值类型)变量bTrue,并且赋值true(1) 定义了一个_Bool(布尔值类型)变量bFalse,并且赋值false(0) 下面的if、else if,此处故意定义多定义一个else if表示在一个if条件判断中可以有多个else if判断 首先第一个if,因为bFalse为0,所以判断为false(假),为通过,所以往下执行 下一个else if,因为bFalse为0,所以当前的else if判断为false(假),未通过,然后往下执行 下一个else if,因为bTrue为1,不等于0,所以当前的else if判断为true(真),通过,然后进行printf格式化输出else if true!,最后跳出当前这个if判断 PS:如果没有通过当前else if,则一直执行下面的else if判断,如果最后所有else if判断都没有通过,则执行else语句(else为无条件通过),如果也没有else,则最终跳出当前if判断语句 else:为了可以看到结果使用printf进行显示结果 #include #include int main(void) { bool bTrue = true; bool bFalse = false; if (bFalse) printf("if true!\n"); else if(bFalse) printf("else if true!\n"); else printf("else!\n"); return 0; } 结果: else! 简单讲解上面的程序:定义了一个_Bool(布尔值类型)变量bTrue,并且赋值true(1) 定义了一个_Bool(布尔值类型)变量bFalse,并且赋值false(0) 首先执行第一个if,if判断为bFalse为false(假),未通过,继续执行下面的else if或else 下一个else if,else if判断为bFalse为false(假),未通过,继续执行下面的else if或else 下一个else,else为无条件通过,最终printf格式输出else! PS:在一个if条件判断中,如果之前的if和else if都未通过,那么执行到else为无条件通过 补充 (2020.2.13): #include #include int main(void) { // 设定一个循环次数 int i = 0, count = 10; while (i++ < count) { // 用if做一个判断, 当 i 为 4 的时候则执行 if 中的内容 if (i == 4) { // 简单打印一条内容 printf("i == 4.\n"); } // 一个循环中有多个 if 进行判断 // 用if做一个判断, 当 i 为 3 的时候则执行 if 中的内容 if (i == 3) { // 简单打印一条内容 printf("i == 3.\n"); } // 一个循环中有多个 if 进行判断 // 用if做一个判断, 当 i 为 2 的时候则执行 if 中的内容 if (i == 2) { // 简单打印一条内容 printf("i == 2.\n"); // 注意使用了 continue 后不会再执行下面的内容了 printf("continue.\n"); continue; } // 打印进行突出 continue printf("i is %d, end.....\n", i); } return 0; } 结果: i is 1, end..... i == 2. continue. i == 3. i is 3, end..... i == 4. i is 4, end..... i is 5, end..... i is 6, end..... i is 7, end..... i is 8, end..... i is 9, end..... i is 10, end..... 简单讲解上面的程序:1. 首先定义一个 int(整数类型)的变量 i 用于循环计数 和 定义一个 int(整数类型)的变量 count 用于表示总循环数 2. 然后执行 while 循环,进行一个循环内容的执行,每执行一次进行一次计数递增 3. 在 while 循环中进行 if 的判断,应要求在循环中增加多个 if 的判断,在每个的判断中进行简单的打印内容 4. 在循环中 if 的执行 取决于它的判断条件是否匹配,并且如果匹配也仅只会执行一次 5. 通过结果可以看出,在 while 中 执行到 continue 则不会再往下执行了,通过 i 为 2 的 if 判断则可知道 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |