1.理解条件结构
小朋友们,今天让我们一起来探索一个神奇而有趣的知识——程序的条件结构!
首先,让我们来想象一个有趣的场景。比如说,你们正在准备去公园玩耍。在出发之前,你们会看看天气怎么样。如果天气晴朗,阳光明媚,那太棒啦,我们就可以开开心心地去公园玩滑梯、荡秋千;但是,如果天上下起了大雨,那我们可能就得改变计划,留在家里玩玩具或者看动画片。
在计算机程序的世界里,也有这样类似的“做决定”的过程,这就是我们所说的条件结构。
条件结构就像是一个聪明的小裁判,它会根据我们设定的一些条件,来决定程序接下来要怎么做。
假设我们正在编写一个小游戏程序,游戏里有一个角色要通过一些关卡。如果这个角色的生命值大于 50,它就能继续前进,去挑战更难的关卡;但如果生命值小于或者等于 50,程序就会让角色停下来休息一会儿,恢复生命值。
再比如,我们有一个计算零花钱的小程序。如果这个月你表现得很好,帮忙做家务了,爸爸妈妈可能会多给你 10 块钱零花钱;如果没有好好表现,那就只能拿到原本的零花钱。
那程序是怎么知道该做出哪种决定的呢?这就需要我们给它设定一些明确的条件和规则。就好像我们知道晴天可以出去玩,雨天要待在家里一样。
比如说,我们可以告诉程序:“如果输入的数字是奇数,就显示‘这是个奇数’;如果输入的数字是偶数,就显示‘这是个偶数’。”然后,当我们向程序输入一个数字,比如 7 时,程序会判断 7 是奇数,然后按照我们设定的条件,显示出“这是个奇数”。
小朋友们,条件结构在我们的生活中也有很多类似的例子哦。比如在学校里,如果考试成绩达到 90 分以上,老师会给你一个小奖励;如果没有达到,可能就需要更加努力学习啦。
当程序员们编写程序的时候,他们会使用一些特定的语言和符号来告诉计算机这些条件和规则。就像我们用语言跟小伙伴交流一样,程序员用特殊的“语言”跟计算机交流。
通过条件结构,程序可以变得更加聪明和灵活,能够根据不同的情况做出不同的反应,为我们完成各种各样有趣和有用的任务。
2. if条件结构
在C++中,if语句是决策语句的最简单形式。它用于确定是否将基于条件语句执行语句块。该条件只有两个布尔值/结果,即true或false。
如果If语句中的条件为true,则执行大括号内的代码块。如果条件计算结果为false,我们将移动到if块之后的代码行。如果If语句之后没有大括号{},则只考虑If块内的第一个语句。
语法结构:
if (条件语句){
// 上述条件为true时所执行的代码段
}
流程图:
-if关键字标记if语句的开始/起始。
-(条件)是指我们正在验证的条件。
-大括号{}包含条件代码,如果条件得到满足,将执行该代码。
3.if-else条件结构
if (条件语句){
// 上述条件为true时所执行的代码段
}else{
// 上述条件为false时所执行的代码段
}
执行 if 正文中的代码,else 正文中的代码从执行中跳过
执行 else 正文中的代码,从执行中跳过 if 正文中的代码
如果条件的计算结果为 true,
如果条件的计算结果为 false,
对应的流程图:
例子:
#include <iostream>
using namespace std;
int main () {
int a = 100;
if( a < 20 ) {
cout << "a 比 20小;" << endl;
} else {
cout << "a 不比 20小;" << endl;
}
cout << "a 的值是 : " << a << endl;
return 0;
}
4.可嵌套的if-else if-else
if (条件语句){
// 上述条件为true时所执行的代码段
}else if (条件语句1) {
// 上述条件语句1为true时所执行的代码段
}else{
//
}
a.如果条件语句的计算结果为 true,
执行 if 正文中的代码,else 则执行条件语句1
b.如果条件语句1的计算结果为 true,
执行 else if 正文中的代码,从执行中跳过 else 正文中的代码
c.如果条件语句1的计算结果为 false,则执行else里的代码
对应的流程图:
5. if-else条件结构的简写运算符?:
认识?:运算符
?: 这个运算符有
今天我们来学习一个在编程里很有趣的东西,叫做 ?:
运算符。
?:
运算符也被称为条件运算符,它就像一个聪明的小裁判,可以根据一个条件来决定给出什么样的结果。
比如说,我们有两个数字,一个是 5,一个是 10。然后我们设定一个条件,如果 10 比 5 大, 那么就输出“1”,否则就输出“0”。
c=a>b?1:0
对应的if-else语句是
if(a>b)
c=1;
else
c=0;
咱们可以把 switch case
想象成一个超级聪明的机器人,它能根据我们给它的一个数字或者一个字符,做出不同的反应。
比如说,我们有一个数字,就像我们给机器人的一个小秘密。然后在 switch
后面写上这个数字。
接下来,有很多个 case
,就像是给机器人的不同指令。
比如 case 1
、 case 2
、 case 3
等等。
当我们给机器人的数字和某个 case
后面的数字一样的时候,机器人就会按照这个 case
后面的要求去做事。
在这个例子里,我们给的数字是 2 ,所以机器人就会执行 case 2
后面的内容,在屏幕上显示“这是 2”。
int num = 2;
switch (num) {
case 1:
std::cout << "这是 1" << std::endl;
break;
case 2:
std::cout << "这是 2" << std::endl;
break;
case 3:
std::cout << "这是 3" << std::endl;
break;
default:
std::cout << "不知道这是几" << std::endl;
}
还有哦,如果我们不想让机器人在执行完一个 case
后继续执行下面的 case
,就要在每个 case
后面加上 break
,就像给机器人一个停止的命令。
语句结构:
switch (条件变量) {
case 条件值1:
//符合条件值1的执行代码块;
break;
case 条件值2:
// 符合条件值1的执行代码块;
break;
.
.
.
default:
// 都不符合的执行代码块;
}
如果存在匹配,则执行匹配条件值后的相应代码。例如,如果变量的值等于条件值1,则执行条件1:之后的代码,直到遇到break语句。break的意思就是跳出swich-case的条件结构,执行以后的代码.
如果不匹配,则执行default:之后的代码
流程图: