第四章 程序流程结构
4.1选择结构
4.1.1 if语句
if语句的三种格式:
单行格式if语句
//4.1选择结构 单行if语句
//1.用户输入分数
int score = 0;
cout << "请输入您的高考成绩:"<< endl;
cin >> score;
//2.打印用户输入的分数
cout << "您输入的分数为:" << score << endl;
//3.判断分数是否大于600,如果大于,那么输出
//注:if条件语句后面不要加分号,不然if语句会失效
if (score >= 600)
{
cout << "恭喜您,考上了一本大学!" << endl;
}
多行格式if语句
//选择结构-多行格式if语句
//输入考试分数,如果分数大于等于600,视为考上一本大学,如果小于600,视为没有考上一本
//1.用户输入分数
int score1 = 0;
cout << "请输入您的高考成绩:" << endl;
cin >> score1;
//2.打印用户输入的分数
cout << "您输入的分数为:" << score1 << endl;
//3.判断分数是否大于600,如果大于,那么输出考上一本,否则输出未考上一本
//注:if条件语句后面不要加分号,不然if语句会失效
if (score1 >= 600)
{
cout << "恭喜您,考上了一本大学!" << endl;
}
else //小于600分,执行else后大括号中的语句
{
cout << "很遗憾,您没有考上一本大学" << endl;
}
多条件的if语句
//选择语句-多条件格式if语句
//选择结构-多行格式if语句
//输入考试分数,如果分数大于等于600,视为考上一本大学,如果小于600,视为没有考上一本
//1.用户输入分数
int score2 = 0;
cout << "请输入您的高考成绩:" << endl;
cin >> score2;
//2.打印用户输入的分数
cout << "您输入的分数为:" << score2 << endl;
//3.判断分数是否大于600,如果大于,那么输出考上一本,否则跳过if后面的语句
//注:if条件语句后面不要加分号,不然if语句会失效
if (score2 >= 600)
{
cout << "恭喜您,考上了一本大学!" << endl;
}
else if(score2<600&&score2>=400) //小于600分但大于400分,执行else后大括号中的语句
{
cout << "恭喜,您考上二本大学" << endl;
}
else
{
cout << "再来一年吧,兄弟" << endl;
}
嵌套语句
//选择结构--嵌套语句
/*案例需求:
1.提示用户输入一个高考考试分数,根据分数做出以下判断
2.分数如果大于600分视为考上一本,大于500视为考上二本分数,大于400考上三本,其余视为未考上本科
3.在一本分数中,如果大于700,考入北大清华,大于650视为考上浙大,大于600考入人大
*/
int score3 = 0;
cout << "请输入高考成绩:" << endl;
cin >> score3;
if (score3 > 600)
{
cout << "考上一本" << endl;
if (score3 >= 700)
{
cout << "恭喜您,考入北大清华!" << endl;
}
else if (score3 >= 650 && score3 < 700)
{
cout << "考入浙大" << endl;
}
else
{
cout << "考入人大" << endl;
}
}
else if (score3 >= 500)
cout << "考上二本" << endl;
else if (score3 >= 400)
cout << "考上三本" << endl;
else
cout << "没考上本科" << endl;
练习案例:三只小猪称重
//练习案例:三只小猪称重
//有三只小猪ABC,请分别输入三只小猪的体重,并判断哪只小猪的体重最重
int pig_a = 0, pig_b = 0, pig_c = 0;
cout << "请依次输入三只小猪ABC的体重:";
cin >> pig_a >> pig_b >> pig_c;
if (pig_a > pig_b)
{
if (pig_a > pig_c)
cout << ("A小猪最重") << endl;
else
cout << ("C小猪最重") << endl;
}
else if (pig_b > pig_c)
cout << "B小猪最重" << endl;
else
cout << "C小猪最重" << endl;
4.1.2 三目运算符
//4.1.2三目运算符
//创建三个变量 a b c
//将a和b作比较,将变量大的值赋值给变量c
int a = 10;
int b = 20;
int c = 0;
c = (a > b ? a : b);
cout << "c=" << c << endl;
//在C++中三目运算符返回的是变量,可以继续赋值
(a > b ? a : b) = 100;
cout << "a=" << a << endl;
cout << "b=" << b << endl;
4.1.3 switch语句
//4.1.3 switch语句
//执行多条件分支语句
//给电影进行评分
//10~9 经典
//8~7 非常好
//6~5 一般
//5以下 烂片
//1.提示用户打分
cout << "请给电影进行评分" << endl;
//2.用户开始进行打分
int score7 = 0;
cin >> score7;
cout << "您打的分数为:" << score7 << endl;
//3.根据用户输入的分数来提示用户最后的结果
switch (score7)
{
case 10:
cout << "您认为是经典电影" << endl;
break;
case 9 :
cout << "您认为是经典电影" << endl;
break;
case 8:
cout << "您认为是非常好的电影" << endl;
break;
case 7:
cout << "您认为是非常好的电影" << endl;
break;
case 6:
cout << "您认为电影一般" << endl;
break;
case 5:
cout << "您认为电影一般" << endl;
break;
default:
cout << "这个电影是烂片" << endl;
break;
}
//if和switch区别
//switch 缺点,判断时候只能是整型或者字符型,不可以是一个区间
//switch 优点,结构清晰,执行效率高,
if和switch区别
switch 缺点,判断时候只能是整型或者字符型,不可以是一个区间
switch 优点,结构清晰,执行效率高,