分支结构程序设计知识总结,及个人感悟

1.在c++中,提供了六种关系运算符,包括>,<,>=,<=,==,!=(其中等于是两个等号,赋值是一个等号)。

2.在c++中 通常用0表示假,1表示真。

3.在c++中,算术运算符,关系运算符,赋值运算符的优先级别由高到低,当然有括号的,先算括号里面。

关系运算符应用举例

假设变量定义为"int x=6,y=4,z=5;"请分别写出下列表达式的值

1)x+y>y+z

2)'x'<'z'

3)x==x>=y

分析1)先进行加法运算,再判断大于关系是否成立,所以表达式的值为1

2)因为字符x的ASCII值小于字符z的ASCII制,所以表达式的值为1

3)先执行后半部分运算其值为1,在执行等号运算6不等于1,所以表达式的值为0

4.c++提供了逻辑与(&&)逻辑或(||)和逻辑非(!)三种逻辑运算符,其中逻辑与和逻辑或是双目运算符,而逻辑非是单目运算符。

5.逻辑表达式是短路计算:在逻辑表达式的计算过程中,一旦能够确定整个表达式的值,就会立刻停止计算。例如,对于"A&&B",如果已经计算出表达式A为假,那么整个表达式的值肯定为假,于是表达式B就不需要再计算下去了。

逻辑运算符应用举例

判断某一年份是否是闰年的表达式

判断某一年是闰年,有两种情况,一种是能被400整除,另一种是能被4整除,但不能被100整除。所以用逻辑运算符可以表示成:

(x%400==0)||(x%4==0)&&(x%100!=0)

6.在c++中,分支结构可以用if语句或者switch语句实现

if语句应用举例

输入三个整数x、y和z,判断是否满足x小于等于y小于等于c,若满足则输出"yes",否则输出"no"

#include

using namespace std;

int main(){

     int x,y,z;

     cin >> x >> y>> z;

    if(x<=y&&y<=z)

cout << "yes" << endl;

else

cout << "no" << endl;

return 0;

}

7.交换a与b的值:

c=a

a=b

b=c

8.如果一条if语句包含好几条语句的话,得用大括号括起来

复合语句应用举例

输入a、b两个整数,如果a大于b,则交换a与b的值、再输出a和b的值

#include

using namespace std;

int main(){

      int a,b,c;

      cin >> a >> b;

      if(a>b){

                  c=a;

                  a=b;

                  b=c;

}

cout << a << " " << b << endl;

return 0;

}

9.使用if语句的嵌套要注意以下几个问题

(1)分支结构可以嵌套很多层

(2)if与else的配对关系

(3)编程要形成良好的代码风格

if语句嵌套应用举例

输入三个整数x,y,z,判断其是否满足x小于等于y小于等于z,若满足输出"yes",否则输出"no"

#include

using namespace std;

int main(){

      int x,y,z;

      cin >> x >> y >> z;

      if(x<=y)

          if(y<=z)

              cout << "yes" << endl;

          else

              cout << "no" << endl;

     else

            cout << "no" << endl;

return 0;

}

10.条件表达式的运算规则为首先计算表达式一的值,若表达式一的值为真则只计算表达式二,并将其结果作为整个表达式的值,否则只计算表达式三,并将其结果作为整个表达式的值

11.使用switch语句要注意以下几点。

1)switch后面的表达式,取值只能是整形、字符型,布尔型或枚举型。case后面的常量表达式,其值类型要与switch后面表达式的类型一致。

2)任意两个case后的表达式值必须各不相同,否则将引起歧义

3)语句组可以是一条语句,也可以是一个复合语句

4)多个case语句可以共用一组程序

switch语句应用举例

输入想x和y,输出x年y月有多少天

#include

using namespace std;

int main(){

      int x,y,day;

      cin >> x >> y;

      switch(y){

                case 1: case 3: case 5:

                case 7: case 8: case 10:

                case 12: day = 31; break;

                case 4: case 6: case 9:

                case 11:day = 30; break;

                case 2:{

                         if((x%400==0)||((x%4==0)&&(x%100!=0)))

                                 day = 29;

                         else

                                 day = 28;

                        break;

            }

     }

cout << day << endl;

return 0;

}

感想

学习c++已经两个月了,对c++也有了一定的认识,感觉是一门很有意思的学科,尽管是一门有一定难度的学科,但我会尽自己的努力去学习这门学科,在老师的谆谆教导之下我一定会学到很多东西,不会的也会和同学请教,扩宽自己的知识面,希望接下来的学习会越来越好

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

}

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

你可能感兴趣的:(分支结构程序设计知识总结,及个人感悟)