第三单元 分支结构程序设计
知识点总结
1、关系运算符
关系运算符共有六种,包括>(大于)、<(小于)、>=(大于或等于)、<=(小于或等于)、==(等于)、!=(不等于)
由关系运算符连接起来的表达式称为关系表达式。通常用0表示假,用非0值(通常用1)表示真。
注意:“==”表示等于,“=”表示赋值
一般用两个数值的差与要求的精度进行比较,判断它们是否相等,或者判断一个数是否等于0。
运算符的优先级:先算乘、除、模运算,再算加减,再算大于、小于、大于或等于、小于或等于,再算等于和不等于,最后算赋值。
举例
假设变量定义为“int x=6,y=4,z=5;”
①x+y>y+z →1
②‘x’<‘z’ →1 带‘’的是指里面的ASCII值③x==x>=y →0 注意运算顺序!
2、逻辑运算符
逻辑非 ! 0变成1 1变成0
逻辑与 && 只有两个全部成立才是真(1)
逻辑或 || 只要一个成立就是真(1)只有两个都不成立才是假(0)
运算符的优先级
逻辑与在逻辑或之前,逻辑非在正、负之前运算级较高,逻辑与在等于运算后。
整型数据在参加逻辑运算时,根据其值是0或非0,分别当做逻辑值的真或假进行处理。
短路计算
在计算过程中,一旦能够确定整个表达式的值,就会立刻停止计算。后面的不进行相应的计算,即不改变对应的值。
举例
①一个0~100之间(不包括0和100)的数a。
a>0&&a<100
②x是英文字母
x>='a' && x<='z' || x>='A' && x<='Z'
3、if 语句
格式有两种
①if (表达式)
语句1;→必须是一条语句或者加{}
else
语句2;
②if (表达式)
语句;
4、if 语句的嵌套
①如果有n种情况,需要(n-1)个if语句
②else子句总是与离它最近的前面的一个
if子句配对,或者根据前面空格的个数即要形成良好的代码风格,采用“缩进”的对齐格式,让同层的
if子句与else子句对齐。
5、条件表达式
格式:<表达式1> ? <表达式2> :<表达式3>
首先计算表达式1的值,若表达式1的值为真(非0),则只计算表达式2,并将其结果作为整个表达式的值;否则,只计算表达式3,并将其结果作为整个表达式的值。
举例:(x % 2 ==0 ? “x is even” : “x is odd”)
even是偶数 odd是奇数
6、switch语句
因在实际问题中,分类情况特别多,如果用if语句嵌套实现,层数太多,容易出错。为此有一种多分支语句——switch
switch的语句组中可以不加{}
7、分支结构应用举例
产生a~b之间的随机整数可以表示为a+rand( )%(b-a+1)
收获与感想
通过这门课程的学习可以锻炼我们遇到问题的逻辑思维能力、通过实际操作还可以培养我们分析问题、解决问题的能力。遇到问题首先要有自己的想法思路,才能下手写程序。对于这门课程,一开始上机可以说真的是无从下手,不知道怎么把程序和自己的想法联系起来,第一次作业根本不知道别人是怎么做到的,为什么自己什么都不懂,为什么要那样写。但是第二次作业就很不一样了,感觉自己原来也同样可以写出复杂的程序,原来并没有原本想的那么难,那么遥不可及。通过这两个月的学习感觉自己也渐渐学会入了C++的大门,对于我而言,现在最重要的还是要上课认真听讲,学会整理笔记,多看书,多做练习,基础很重要,如果现在基础打不好,后面的课会更困难。尽管自己的进步并不是很大,和那些厉害的同学还差很远,但是我会不断努力的!用实际行动证明!