C++学习目录链接:
C++学习笔记目录链接(持续更新中)
一、条件判断语句
1.判断语句
第一种形式的判断语句
C++语言中使用if关键字来组成判断语句,第- -种判断语句的形式如下:
if(表达式)
语句
表达式一般为关系表达式,表达式的运算结果应该是真或假(true 或false)。如果表达式为真,执行语句,如果为假就跳过,执行下一条语句。用流程图表示第一种判断语句如图所示。
/*第一种条件判断语句。*/
#include <iostream>
using namespace std;
void main()
{
int iinput;//定义一个变量
cout<<"请输入一个整数:"<<endl;
cin>>iinput;//输入
if (iinput%2==0)
cout<<"输入的整数是偶数:"<<iinput<<endl;
}
![](https://img-blog.csdnimg.cn/img_convert/4b0333084c0468b59174f72d50c6204c.png#pic_center)
要注意第一种形式的判断语句的书写格式。
判断语句:
if(a>b)
max=a;
可以写成:
if(a>b) max=a;
但不建议使用“if(a>b) max =a;”这种书写方式,这种方式不便于阅读。
判断形式中的语句可以是复合语句,也就是说可以用大括号括起多条简单语句。例如:
if(a>b)
{
tmp=a;
b=a;
a=tmp;
}
第二种形式的判断语句
第二种形式的判断语句使用了else 关键字,形式如下:
if(表达式)
语句1;
else
语句2;
表达式是一个关系表达式,表达式的运算结果应该是真或假(true或false),如果表达式的值为真,执行语句1,为假则执行语句2。第二种形式的判断语句相当于汉语里的“如…”用流程图表示第二种判断语句,如图所示。
/*第二种条件判断语句。*/
#include <iostream>
using namespace std;
void main()
{
int iinput;//定义一个变量
cout<<"请输入一个整数:"<<endl;
cin>>iinput;//输入
if (iinput>=90)
cout<<"成绩优秀,成绩是::"<<iinput<<endl;
else
cout<<"成绩不优秀,成绩是:"<<iinput<<endl;
}
![](https://img-blog.csdnimg.cn/img_convert/9ec99e9dafad983ed4d9f70ec776ccce.png#pic_center)
if else 后面可以是复合语句
第三种形式的判断语句
第三种形式的判断语句是可以进行多次判断的语句,每判断- -次就缩小一定的检查范围,其形式
如下:
if(表达式1)
语句1;
else if(表达式2)
语句2;
else if(表达式3)
语句3
else i(表达式m)
语句m;
else
语句n;
表达式一般为关系表达式,表达式的运算结果应该是真或假(rue 或false)。如果表达式为真,执行语句,如果表达式为假就跳过,执行下一条语句。 用流程图表示第三种判断语句,如图所示。
/*第三种条件判断语句。*/
#include <iostream>
using namespace std;
void main()
{
int iinput;//定义一个变量
cout<<"请输入一个整数成绩:"<<endl;
cin>>iinput;//输入
if (iinput>=90)
{
cout<<"成绩优秀,成绩是::"<<iinput<<endl;
}
else if(iinput<90 && iinput>80)
{
cout<<"良好,成绩是:"<<iinput<<endl;
}
else if(iinput<80 && iinput>70)
{
cout<<"普通,成绩是:"<<iinput<<endl;
}
else if(iinput<70 && iinput>60)
{
cout<<"及格,成绩是:"<<iinput<<endl;
}
else
{
cout<<"差,成绩是:"<<iinput<<endl;
}
}
![](https://img-blog.csdnimg.cn/img_convert/13429a033917b69d48214d9928824b3d.png#pic_center)
二、使用条件运算符进行判断
条件运算符是-一个三目运算符,它能像判断语句一样完成判断。例如:
max=(iA> iB)?iA: iB;
首先比较iA和iB的大小,如果iA大于iB就取iA的值,否则取iB的值。
可以将条件运算符改为判断语句。例如:
if(iA> iB)
max= iA;
else
max= iB;
#include <iostream>
using namespace std;
void main()
{
int iinput;//定义一个变量
cout<<"请输入一个整数:"<<endl;
cin>>iinput;//输入
(iinput%2==0)?(cout<<"输入为偶数"<<iinput):(cout<<"输入为奇数"<<iinput);
cout<<endl;
}
![](https://img-blog.csdnimg.cn/img_convert/81bc9ed22ec0b0da193f9d8cae44023d.png#pic_center)
条件运算符可以嵌套,例如:
表达式1?(表达式a?表达式b:表达式c;):表达式1;
三、switch语句
C++语言提供了一种用于多分支选择的switch 语句。可以使用if 判断语句做多分支结构程序,但当分支足够多时,if判断语句会造成代码容易混乱,可读性也很差,如果使用不当就会产生表达式上的错误,所以建议在仅有两个分支或分支数少时使用if判断语句,而在分支较多时使用switch语句。switch语句的一般形式如下: .
表达式是一个算术表达式,需要计算出表达式的值,该值应该是一一个整型数或是一个字符,如果是浮点数,可能会因为精度的不精确而产生错误。
switch是分支的入口,开始判断是在case分语句中,用表达式的值逐一-和 case语句中的值进行比较,有匹配成功的用“break;"跳出switch 语句,如果没有匹配成功的,就执行default分句。
default分句是可以不写的,如果不写default分句, case分语句中没有匹配成功的就不进行任何操作。
#include <iostream>
using namespace std;
void main()
{
int iinput;
int score;
cout<<"请输入一个整数:"<<endl;
cin>>iinput;
score=iinput/10;
switch(score)
{
case 9:cout<<"成绩优秀,成绩是:"<<iinput<<endl;
break;
case 8:cout<<"成绩良好,成绩是:"<<iinput<<endl;
break;
case 7:cout<<"成绩普通,成绩是:"<<iinput<<endl;
break;
case 6:cout<<"成绩及格,成绩是:"<<iinput<<endl;
break;
default:
cout<<"成绩不及格,成绩是:"<<iinput<<endl;
break;
}
}
![](https://img-blog.csdnimg.cn/img_convert/56e84fdbc14cf44530b98a1ecb8dc5fa.png#pic_center)
四、判断语句嵌套
前面讲过3种形式的判断语句,这3种形式的判断语句都可以嵌套判断语句。例如,在第-种形
式的判断语句中嵌套第二种形式的判断语句,形式如下:
if(表达式1)
{
if(表达式2)
语句1;
else
语句2;
}
在第二种形式的判断语句中嵌套第二种形式的判断语句,形式如下:
![](https://img-blog.csdnimg.cn/img_convert/024a16361bb10f8c3d6750b7c3b243ec.png#pic_center)
总结
本文讲解了C++版本的的条件判断语句。
作者:电气-余登武