文章目录
前言
本课主要介绍如下内容。
(1)选择结构的概念
(2)if-else语句及其应用
(3)switch-case语句及其应用
本课用到的关键字包括if、else、switch、case、break、default
一、选择结构
典型的选择结构
二、if-else语句
1. 基本if-else语句
#include<iostream>
using namespace std;
int main() {
unsigned int a;
cin>>a;
if(a%2 == 0) cout<<"Even";
else cout<<"Odd";
return 0;
}
2. 省略else的if语句
3. if-else语句嵌套
分制转换问题。
给定一个百分制成绩s,转为五分制成绩输出。
规则如下:
[90, 100]— A;
[80, 90)— B;
[70, 80)— C;
[60, 70)— D;
[0,60)— E;
#include<iostream>
using namespace std;
int main() {
float s;
cin >> s;
if(s>=90 && s<=100) cout << 'A';
else if(s>=80 && s<90) cout << 'B';
else if(s>=70 && s<80) cout << 'C';
else if(s>=60 && s<70) cout << 'D';
else if(s>=0 && s<60) cout << 'E';
return 0;
}
三、switch-case语句
四、课后练习
1. 数位问题
给定一个正整数n,判断其是否是一个三位数,若是,输出YES,否则,输出NO 。
提示
三位正整数的判断条件:
(100<=n) && (n<=999)
2. 整除问题
给定一个正整数n,判断其能否同时被3、5、7整除,若能够,输出YES,否则,输出NO 。
提示
三位正整数的判断条件:
(n%3==0) && (n%5==0) && (n%7==0)
3. 闰年问题
输入一个年份,判断其是否是闰年。
提示
闰年的科学判定方法是:如果能被4整除且不能被100整除或者能被400整除,则这一年就是闰年。也可以记为“四年一闰,百年不闰,四百年又闰”。
C++描述:
(year%4==0) && (year%100!=0) || (year%400==0)
输入一个年份和该年中的一个月份,判断该月份有多少天。
#include<iostream>
using namespace std;
bool isLeap(int year) {
if((year%4==0) && (year%100!=0) || (year%400==0))
return true;
else
return false;
}
int main() {
int year, month;
cout << "Input year month: " << endl;
cin >> year >> month;
switch (month) {
case 2:
cout << (isLeap(year) ? 29 : 28) << endl;
break;
case 4:
case 6:
case 9:
case 11:
cout << 30 << endl;
break;
default:
cout << 31 << endl;
break;
}
return 0;
}
4. 三角形三边问题
三角形的任意两边之和大于第三边。给定3条线段的长度(正整数),判断它们是否能够围城一个三角形。如果能够,则输出YES,否则输出NO。
提示
判断条件: (a+b>c) && (a+c>b) && (b+c>a)为真
bool isTriangle(float edge1, float edge2, float edge3) {
if(edge1+edge2>edge3 && edge2+edge3>edge1 && edge1+edge3>edge2) {
return true;
else
return false;
}
}
5. 大小写转换问题
给定一个字符ch,如果它是一个大写字母,则把它转为小写字母;如果它是一个小写字母,则把它转为大写字母;其它字符不变。
提示
大写字母判断: (ch>=‘A’) && (ch<=‘Z’) 为真
小写字母判断: (ch>=‘a’) && (ch<=‘z’) 为真
大写字母转小写字母运算:ch += 32;
小写字母转大写字母运算:ch -=32;