目录
一、前言
1、上节课回顾
二、重点知识介绍
1、选择语句
2、条件语句
3、开关语句
三、例题
1、if语句
2、switch语句
四、思考题
1、思考题1
2、思考题2
上一次给大家讲了C++数组,在以后的代码中,数组会经常使用到。因为是刚刚入门,不宜太难,所以没有讲太多难的地方,简单的,也不需要留思考题。
今天主要给大家讲的就是选择语句,包括条件语句和开关语句。
选择语句一共分为两种:条件语句和开关语句;
条件语句又叫if语句,开关语句又叫switch语句。
选择语句可以实现多路分支。
条件语句格式如下:
if (/*<条件1>*/)
{
//语句1
}
else if (/*<条件2>*/)
{
//语句2
}
else if (/*<条件3>*/)
{
//语句3
}
//……
else
{
//语句m
}
如果if里的条件满足,就执行if下面的大括号中的语句,如果if里的条件不满足,就执行else下面的大括号中的语句。
注意点:
1.有if可以没有else,但是有else,前面必须要有if。
2.else与同一个级别内(同一个大括号内)的与之最近的 if 是一组。
对于上面的1,下面的代码是成立的:
//没有else
if (/*<条件1>*/)
{
//语句1
}
//最后一个if没有else
if (/*<条件1>*/)
{
//语句1
}
else if (/*<条件2>*/)
{
//语句2
}
else if (/*<条件3>*/)
{
//语句3
}
下面的代码是不对的:
//没有if
else if (/*<条件2>*/)
{
//语句2
}
else if (/*<条件3>*/)
{
//语句3
}
//没有if
else
{
//语句m
}
对于2,给大家举一个例子:
int a;
a = 12;
if (a>10)
{
if (a>20)
cout << "a > 20" << endl;
else
cout << "10 < a <= 20" << endl;
}
else
{
cout << "a < 10" << endl;
}
执行结果为:
10 < a <= 20
第一个else对应的是第二个if,第二个else对应的是第一个if。
开关语句格式如下:
switch (表达式) {
case 常量表达式1:
《语句序列1》;
break; //《》中的内容可省
……
case 常量表达式n:
《语句序列n》;
break;
default :
《语句序列n+1》;
break;
}
如果表达式里的值满足常量表达式1,就执语句序列1,满足常量表达式2,就执语句序列2……如果都不满足,就执行default下面的大括号中的语句。
注意点:
1.break用于跳出当前语句块,每个常量表达式都不同,那必须要+break,如果某几个常量表达式相同,那break可以省略。
2.case后面只能是一个常量,不能是一个区间,如果想要用区间,需要想办法转化成一个常量,并且常量要与区间一一对应。
利用 if语句判断小明的成绩在班里的层次(满分100):
>=90分,优秀;>=80分,良;>=60分,及格;<60,分,不及格。
#include
using namespace std;
void main() {
float score;
cout << "please input socre :";
cin >> score;
if (score>100 ||score<0)
cout << "数据错误" << endl;
else if (score>=90)
cout << "优秀" << endl;
else if (score >= 80)
cout << "良" << endl;
else if (score >= 60)
cout << "及格" << endl;
else
cout << "不及格" << endl;
system("pause");
}
输入数字1-7:
如果输入1,输出星期一;
如果输入2,输出星期二;
……
如果输入7,输出星期日;
#include
using namespace std;
void main() {
int number;
cout << "please input a integer which between 1 and 7 :";
cin >> number;
switch (number)
{
case 1:
cout << "星期一" << endl;
break;
case 2:
cout << "星期二" << endl;
break;
case 3:
cout << "星期三" << endl;
break;
case 4:
cout << "星期四" << endl;
break;
case 5:
cout << "星期五" << endl;
break;
case 6:
cout << "星期六" << endl;
break;
default:
cout << "星期日" << endl;
break;
}
system("pause");
}
今年是2019年,请利用if语句和switch语句分别实现如下功能:
输入月份,输出该月对应的天数。
利用if语句和switch语句分别实现简单计算器:
计算两个浮点型数据的加减乘除四则运算,若除法出入的除数为0,输出:除数不能为0,其他情况输出运算及结果。
例如:输入两个数为5.2和100,输出应为:5.2 * 100 = 520 。
思考题的答案会在下一次的【C++从入门到熟练练习题】中公布哦,希望大家能够多多练习。