欢迎来到天天文库
浏览记录
ID:40838616
大小:575.00 KB
页数:46页
时间:2019-08-08
《chap04-1选择结构程序设计》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第4章选择与循环结构程序设计4.1选择结构程序4.2循环结构程序4.1选择结构程序选择结构的N-S流程图如图所示。关系运算:比较运算,比较两个操作数,看是否满足给定的关系。1、关系运算符<:小于,5<3,3<5<=:小于等于,5<=3,3<=5,与数学上(≤)不同>:大于,5>3,3>5>=:大于等于,5>=3,3>=5,与数学上(≥)不同==:等于,5==3,与数学上(=)不同!=:不等于,5!=3,与数学上(≠)不同4.1.1关系运算符与关系表达式关系运算符及其优先次序运算符名称示例<<=>>===!=小于小于或等于大于大于或等于等于不等于a2、a>ba>=ba==ba!=b示例说明a小于ba小于或等于ba大于ba大于或等于ba等于ba不等于b优先次序优先级相同(高)优先级相同(低)C语言中的关系运算符关于优先次序的说明如下:(1)关系、算术、赋值运算符的优先级关系如下:算术运算符(高)关系运算符(中)赋值运算符(低)(2)关系运算符的结合方向是“自左向右”例:c+d>a+b(c+d)>a+ba>b!=c(a>b)!=ca==b=ca=(b>=c)x!=a*b3、在C语言中,关系表达式的结果为1或0。当关系表达式成立时,其结果为1;否则值为0。例:3<2的值为5!=81的值为01用关系运算符将表达式连接起来的式子C语言中,真:非0值,假:0值例:试求x=5>3>1的值分析:x=5>3>1x=(5>3)>1=1>1=0例:若a=3,b=4,c=5则a>ba+b>cf=ab>c表达式值为表达式值为表达式值为表达式值为00111.逻辑运算符及其优先次序运算符名称示例!&&4、5、逻辑非逻辑与逻辑或!aa&&ba6、7、b示例说明a非a与ba或b优先次序高低C语言中的逻辑运算符4.1.2逻辑运算符与逻辑表达式2、关于8、优先次序的说明如下:(1)(2)运算符优先次序!(非)算术运算符关系运算符&&和9、10、赋值运算符高低运算符的优先级!:自右向左&&、11、12、:自左向右结合性例:(a>b)&&(x>y)a>b&&x>y(a==b)13、14、(x==y)a==b15、16、x==y(!a)17、18、(a>b)!a19、20、a>b逻辑表达式的值非0值:真0值:假整型实型字符型指针类型00.0 NULL3、逻辑表达式用逻辑运算符将表达式连接起来的式子。4、逻辑运算符的运算规则!:逻辑非,一元运算符运算规则:取反,真假,假真&&:逻辑与。又称逻辑乘。运算规则:两个操作数均为真,结果为真。21、22、:逻辑或。又称逻辑加。23、运算规则:只要两个操作数有一个为真,结果为真。ab!b非0非000非00非00011a&&ba24、25、b逻辑运算规则表!a0001110000111例:设x=9,y=3,则逻辑表达式:x>y&&x!0的值为1例:inta=5;floatb=3.5;!a0!b0a&&b1a26、27、b1!a&&!b04、注意在逻辑表达式的求解中,并不是所有的逻辑运算符都被执行,只是在必须执行下一个逻辑运算符才能求出表达式的解时,才执行该运算符。——短路运算例:a=0;b=1;c=2;d=a++&&b++&&--c;d=(a++)&&(b++)&&(--c);运算结果:d=0,a=1,b28、=1,c=2(1)a&&b&&c求解方法:只有a为真(非0),才需要判断b的值,只有a和b都为真,才需要判断c的值。只要a为假,就不必判断b和c,运算立即中止。(2)a29、30、b31、32、c求解方法:只要a为真(非0),就不必判断b和c;只有a为假,才判断b;a和b都为假,才判断c。例2-8:a=0;b=1;c=2;d=a++33、34、b++35、36、--c;d=(a++)37、38、(b++)39、40、(--c);运算结果:d=1,a=1,b=2,c=2实际问题中逻辑量的描述(1)图所示x轴上阴影区间的数据描述x>=1&&x<=21>=x<=2错误(2)闰年问题假定闰年为year,判定是41、否闰年的标准为:如果该年能被4整除且不能被100整除,或者该年能被400整除,则都为闰年。能被4整除且不能被100整除,可表示为:year%40year%100!0;&&能被400整除可表示为:year%4000闰年问题的表达式为:year%40&&year%100!042、43、year%4000也可表示为:!(year%4)&&year%10044、45、!(year%400)1、单分支选择if语句if语句有三种形式:单分支选择if语句、双分支选择if语句、多分支选择if语句。语句形式:if(表达式)语句;语句执行流程:表达式语句真(非0)假(0)一46、、if语句的三种形式4.1.3if语句例:从键盘输入
2、a>ba>=ba==ba!=b示例说明a小于ba小于或等于ba大于ba大于或等于ba等于ba不等于b优先次序优先级相同(高)优先级相同(低)C语言中的关系运算符关于优先次序的说明如下:(1)关系、算术、赋值运算符的优先级关系如下:算术运算符(高)关系运算符(中)赋值运算符(低)(2)关系运算符的结合方向是“自左向右”例:c+d>a+b(c+d)>a+ba>b!=c(a>b)!=ca==b=ca=(b>=c)x!=a*b3、在C语言中,关系表达式的结果为1或0。当关系表达式成立时,其结果为1;否则值为0。例:3<2的值为5!=81的值为01用关系运算符将表达式连接起来的式子C语言中,真:非0值,假:0值例:试求x=5>3>1的值分析:x=5>3>1x=(5>3)>1=1>1=0例:若a=3,b=4,c=5则a>ba+b>cf=ab>c表达式值为表达式值为表达式值为表达式值为00111.逻辑运算符及其优先次序运算符名称示例!&&4、5、逻辑非逻辑与逻辑或!aa&&ba6、7、b示例说明a非a与ba或b优先次序高低C语言中的逻辑运算符4.1.2逻辑运算符与逻辑表达式2、关于8、优先次序的说明如下:(1)(2)运算符优先次序!(非)算术运算符关系运算符&&和9、10、赋值运算符高低运算符的优先级!:自右向左&&、11、12、:自左向右结合性例:(a>b)&&(x>y)a>b&&x>y(a==b)13、14、(x==y)a==b15、16、x==y(!a)17、18、(a>b)!a19、20、a>b逻辑表达式的值非0值:真0值:假整型实型字符型指针类型00.0 NULL3、逻辑表达式用逻辑运算符将表达式连接起来的式子。4、逻辑运算符的运算规则!:逻辑非,一元运算符运算规则:取反,真假,假真&&:逻辑与。又称逻辑乘。运算规则:两个操作数均为真,结果为真。21、22、:逻辑或。又称逻辑加。23、运算规则:只要两个操作数有一个为真,结果为真。ab!b非0非000非00非00011a&&ba24、25、b逻辑运算规则表!a0001110000111例:设x=9,y=3,则逻辑表达式:x>y&&x!0的值为1例:inta=5;floatb=3.5;!a0!b0a&&b1a26、27、b1!a&&!b04、注意在逻辑表达式的求解中,并不是所有的逻辑运算符都被执行,只是在必须执行下一个逻辑运算符才能求出表达式的解时,才执行该运算符。——短路运算例:a=0;b=1;c=2;d=a++&&b++&&--c;d=(a++)&&(b++)&&(--c);运算结果:d=0,a=1,b28、=1,c=2(1)a&&b&&c求解方法:只有a为真(非0),才需要判断b的值,只有a和b都为真,才需要判断c的值。只要a为假,就不必判断b和c,运算立即中止。(2)a29、30、b31、32、c求解方法:只要a为真(非0),就不必判断b和c;只有a为假,才判断b;a和b都为假,才判断c。例2-8:a=0;b=1;c=2;d=a++33、34、b++35、36、--c;d=(a++)37、38、(b++)39、40、(--c);运算结果:d=1,a=1,b=2,c=2实际问题中逻辑量的描述(1)图所示x轴上阴影区间的数据描述x>=1&&x<=21>=x<=2错误(2)闰年问题假定闰年为year,判定是41、否闰年的标准为:如果该年能被4整除且不能被100整除,或者该年能被400整除,则都为闰年。能被4整除且不能被100整除,可表示为:year%40year%100!0;&&能被400整除可表示为:year%4000闰年问题的表达式为:year%40&&year%100!042、43、year%4000也可表示为:!(year%4)&&year%10044、45、!(year%400)1、单分支选择if语句if语句有三种形式:单分支选择if语句、双分支选择if语句、多分支选择if语句。语句形式:if(表达式)语句;语句执行流程:表达式语句真(非0)假(0)一46、、if语句的三种形式4.1.3if语句例:从键盘输入
3、在C语言中,关系表达式的结果为1或0。当关系表达式成立时,其结果为1;否则值为0。例:3<2的值为5!=81的值为01用关系运算符将表达式连接起来的式子C语言中,真:非0值,假:0值例:试求x=5>3>1的值分析:x=5>3>1x=(5>3)>1=1>1=0例:若a=3,b=4,c=5则a>ba+b>cf=ab>c表达式值为表达式值为表达式值为表达式值为00111.逻辑运算符及其优先次序运算符名称示例!&&
4、
5、逻辑非逻辑与逻辑或!aa&&ba
6、
7、b示例说明a非a与ba或b优先次序高低C语言中的逻辑运算符4.1.2逻辑运算符与逻辑表达式2、关于
8、优先次序的说明如下:(1)(2)运算符优先次序!(非)算术运算符关系运算符&&和
9、
10、赋值运算符高低运算符的优先级!:自右向左&&、
11、
12、:自左向右结合性例:(a>b)&&(x>y)a>b&&x>y(a==b)
13、
14、(x==y)a==b
15、
16、x==y(!a)
17、
18、(a>b)!a
19、
20、a>b逻辑表达式的值非0值:真0值:假整型实型字符型指针类型00.0 NULL3、逻辑表达式用逻辑运算符将表达式连接起来的式子。4、逻辑运算符的运算规则!:逻辑非,一元运算符运算规则:取反,真假,假真&&:逻辑与。又称逻辑乘。运算规则:两个操作数均为真,结果为真。
21、
22、:逻辑或。又称逻辑加。
23、运算规则:只要两个操作数有一个为真,结果为真。ab!b非0非000非00非00011a&&ba
24、
25、b逻辑运算规则表!a0001110000111例:设x=9,y=3,则逻辑表达式:x>y&&x!0的值为1例:inta=5;floatb=3.5;!a0!b0a&&b1a
26、
27、b1!a&&!b04、注意在逻辑表达式的求解中,并不是所有的逻辑运算符都被执行,只是在必须执行下一个逻辑运算符才能求出表达式的解时,才执行该运算符。——短路运算例:a=0;b=1;c=2;d=a++&&b++&&--c;d=(a++)&&(b++)&&(--c);运算结果:d=0,a=1,b
28、=1,c=2(1)a&&b&&c求解方法:只有a为真(非0),才需要判断b的值,只有a和b都为真,才需要判断c的值。只要a为假,就不必判断b和c,运算立即中止。(2)a
29、
30、b
31、
32、c求解方法:只要a为真(非0),就不必判断b和c;只有a为假,才判断b;a和b都为假,才判断c。例2-8:a=0;b=1;c=2;d=a++
33、
34、b++
35、
36、--c;d=(a++)
37、
38、(b++)
39、
40、(--c);运算结果:d=1,a=1,b=2,c=2实际问题中逻辑量的描述(1)图所示x轴上阴影区间的数据描述x>=1&&x<=21>=x<=2错误(2)闰年问题假定闰年为year,判定是
41、否闰年的标准为:如果该年能被4整除且不能被100整除,或者该年能被400整除,则都为闰年。能被4整除且不能被100整除,可表示为:year%40year%100!0;&&能被400整除可表示为:year%4000闰年问题的表达式为:year%40&&year%100!0
42、
43、year%4000也可表示为:!(year%4)&&year%100
44、
45、!(year%400)1、单分支选择if语句if语句有三种形式:单分支选择if语句、双分支选择if语句、多分支选择if语句。语句形式:if(表达式)语句;语句执行流程:表达式语句真(非0)假(0)一
46、、if语句的三种形式4.1.3if语句例:从键盘输入
此文档下载收益归作者所有