第三单元分支结构程序设计小结

第三单元分支结构程序设计总共包括七节,分别是关系运算符,逻辑运算符,if语句,if语句的嵌套,条件表达式,switch语句,分支结构应用举例。学完这七节收获了很多 特别是if与switch语句的应用让程序变得简洁易懂,原本复杂的语句变得清晰明了。通过学习运算符,我发现多个条件的综合表达是多么有趣。把程序由繁到简,由平铺直叙到丰富多彩有意义或许就是我的学习主线!

首先我先总结老师上课突出强调的,再对每章进行总结。

1、若没有“,”则要写endl,最好(一定)分隔开数与数。

2、!a   相当于a==0

3、一个字母或一个数字,可做关系表达式

3、判断闰年的表达式,(x%400==0)||(x%4==0)&&(x%100!=0)

4、在程序中不要描述程序范围(画蛇添足)

5、数据交换通过第三个变量完成

6、条件语句的个数等于情况数减去一

7、程序结构要锯齿状,成立不成立做的工作要左进Tab键自动左进。

8、一条语句无法描述,用复合语句描述加中括号

9、switch和if可以相互嵌套使用。

第一节 关系运算符

1、==表示相等,= 表示赋值(判断相等一定是用两个等号) 真为非零值,假为零。

2、在C加加中,一般用两个数值的差与要求的精度进行比较,判断它们是否相等,或者判断一个数是否等于零。

例如:float const zero=1 e-3

判断fabs(x-y)小于zero或者fabs(x)小于zero

3、运算符的优先级   算术运算符大于关系运算符大于赋值运算符

第二节 逻辑运算符

1、逻辑与运算符(&&)   两个条件都成立才成立

逻辑非运算符(!)  A 0;!A 1

逻辑或运算符(||)一个成立就都成立

逻辑非优先级特别高。优先级,赋值小于逻辑小于关系

2、逻辑表达式是短路运算。在逻辑表达式的计算过程中,一旦能够确定整个表达式的值,就会立即停止运算。

第三节 if语句

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

if语句格式一:if(表达式) 语句1;

                          else 语句2;

if语句表达式二:if(表达式) 语句;特例,特定情况下,做指定式,否则不执行。

2、条件超过一条,一定加大括号

第四节 if语句的嵌套

1、嵌套一般用来解决三种及以上的分支情况,分支结构可以嵌套很多层,程序中的else子句总是与离他最近的前面一个if子句配对

2、嵌套;在某个前提下继续做工作,细分问题

第五节 条件表达式

1、格式为:<表达式1>?<. 表达式2>:<表达式3>     

规则:首先,计算表达式一的值,若表达式一的值为真即非零,则只计算表达式二,并将其结果作为整个表达式的值,否则只计算表达式三,并将其结果作为整个表达式的值。

2、表达式无范围文字,数字字符都可以

第六节 switch语句

1、条件,情况有限个,有限个情况可通过离散数据完成。

2、格式:switch(表达式){

                  case 常量表达式1:语句组1;【break;】

                   …

                  case 常量表达式n:语句组n;【break;】

                 【default:语句组n+1】

default表示表达式与所有常量表达式的值都不匹配,那么就只行其后面的语句题,通常将default放在最后。如果表达式与各分支常量表达式的值都不匹配时,不需要要执行任何语句,则default可以省略。

3、注意:switch后面的表达式,取值只能是整型,字符型,布尔型或枚举型。case后面的量表达式,其值类型要与switch后面表达式的类型一致。任意两个case语句后的表达式值必须各不相同,否则将引起歧义。 语句组可以是一条语句,也可以是一个复合语句。“多个case语句可以共用一组程序!”

第七节 分支结构应用举例

一般来说,产生a到b之间的随机整数,可以表示为a+rand()%(b-a+1)

如何产生随机数?

#include

#include

#include

using namesoace std;

 int main(){

int a,b,c;

srand(time(0));

int x=1,y=9;

a=x+rand()%(y- x+1);

 b=x+rand()%(y-x+1);

x=1;

y=4;

c=x+rand()%(y-x+1);

switch(c){

case1:printf("%d+%d=%d\n,a,b,a+b);break;

case2:printf("%d-%d=%d\n,a,b,a/b);break;

case3:printf("%d*%d=%d\n,a,b,a*b);break;

case4:printf("%d/%d=%d\n,a,b,a\b);break;

}

return 0;

}

以上便是我的心得总结。

 

 

 

                  

 

 

 


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部