【Day 13】C语言的 if 条件判断(下)

有时候,我们可能会需要多个条件的判断,这时候就会用到 if 的巢状条件式了!

巢状条件式

语法如下:

if(condition 1){
    statement 1;
    if(condition 2){
        statement 2;
    }
    ...
    ...
}

上面的程序码,是如果只满足 condition 1,就只会执行 statement 1。要同时满足 condtion 1&2,才会执行到 statement 2。

if...else if...else

语法如下:

if(condition 1){
    statement 1;
else if(condition 2){
    statement 2;
}
...
else{
    statement n;
}

上面的程序码功能是:

  • 如果满足 condition 1,就执行 statement 1
  • 若不满足 condition 1,则往下执行,如果满足 condition 2,就执行 statement 2
  • 如果执行到最後都没有一个 condition 是满足的,就执行 statement n。

写程序时,我们常常希望我们的程序是简洁易读的,这时候就有一个很好用的表达式可以帮助我们缩短程序码~

三元表达式

其实,在刚学程序的时候,我都很少用三元表达式,因为不是很熟,但上大学发现,三元表达式真的是好好用!
一般形式:
Exp1 ? Exp2 : Exp3;
其中,Exp1 是一个条件,如果条件成立,就做 Exp2 的运算,运算结果会是整个表达式的值,如果 Exp2 条件不成立,就做 Exp3 的运算,运算结果也会是整个表达式的值。
这部分需要上程序码解释一下:

#include<stdio.h>
int main(){
    int A = 0;
    char output = 'U';
    output = (A == 0)?'T':'F';
    printf("A=0 ?--> %c", output);
    return 0;
}

输出结果:

这个程序,是想判断 A 是不是等於 0,一开始宣告变数 output 等於U(unknown),然後执行 output = (A==0)?'T':'F'; 这行程序,这行程序的意思是「A 是否等於 0,如果是的话 output 会等於 T(true),如果否的话,output 会等於 F(false)」,然後我们再将结果输出,会发现,output 从 ’U’ 经过判断变成了 ’T’。

学完 if 条件句,我们可以写个小程序练习一下如何使用 if 条件句,最经典的题目就是 BMI 问题。

让我们写一个程序,让使用者输入身高、体重,算出 BMI 输出,并判断过轻、适中、过重!
BMI = 体重(kg)/(身高(m)*身高(m))
BMI < 18.5 体重过轻
18.5 <= BMI < 24 体重适中
BMI >= 24 体重过重

明天再来看看这种题目如何解决!


<<:  EP13 - [TDD] 使用工厂模式让测试更简单

>>:  事件回力镖 - 捕获与冒泡

Day 7 - 使用 AES-CBC 机制对 Message 内文进行加密

图 7-1: 各栏位资料范例 本文的目标是将如 Message 栏位的内文使用 AES 加密机制将...

Day11 vue.js实现简单的登入功能

延续昨日 今天来把登入的功能搞定吧! 记得我们day7学到的东西吗? :class="pr...

Day29_ISO27037数位证据处理程序国际标准-2021/10/12

Day21_控制项(A16资讯安全事故管理)有稍微提到的数位监识~继续作功课呀~ ▉ISO 2703...

[第17天]理财达人Mx. Ada-股款交割

前言 本文说明查询帐户股款交割资讯。 程序实作 程序 # 股款交割 settlements =api...

[Day11] Let's Post!

虽然在 Day08 时已经新增过一篇文章,但因为是测试用的关系并没有深入,今天就让深入聊聊产出一篇文...