第4章选择结构程序设计 41选择结构和条件判断 42用近语句实现选择结构 4.3关系运算符和关系表达式 4.4逻辑运算符和逻辑表达式 4.5条件运算符和条件表达式 4.6选择结构的嵌套 4.7用 switch语句实现多分支选择结构 48选择结构程序综合举例
第4章 选择结构程序设计 4.1 选择结构和条件判断 4.2 用if语句实现选择结构 4.3关系运算符和关系表达式 4.4 逻辑运算符和逻辑表达式 4.5 条件运算符和条件表达式 4.6 选择结构的嵌套 4.7 用switch语句实现多分支选择结构 4.8选择结构程序综合举例
41选择结构和条件判断 >在现实生活中,需要进行判断和选择的 情况是很多的 ◆如果你在家,我去拜访你 ◆如果考试不及格,要补考 ◆如果遇到红灯,要停车等待 ◆周末我们去郊游 ◆70岁以上的老年人,入公园免票
4.1 选择结构和条件判断 ➢在现实生活中,需要进行判断和选择的 情况是很多的 ◆如果你在家,我去拜访你 ◆如果考试不及格,要补考 ◆如果遇到红灯,要停车等待 ◆周末我们去郊游 ◆70岁以上的老年人,入公园免票
41选择结构和条件判断 >C语言有两种选择语句: (1)语句,实现两个分支的选择结构 (2) switch语句,实现多分支的选择结构
4.1 选择结构和条件判断 ➢C语言有两种选择语句: (1)if语句,实现两个分支的选择结构 (2)switch语句,实现多分支的选择结构
41选择结构和条件判断 例41在例35的基础上对程序进行改进。 题目要求是求ax2+bx+c=0方程的根。 由键盘输入abC。假设abc的值任意, 并不保证b2-4ac≥0。需要在程序中进行 判别,如果b2-4ac≥0,就计算并输出方 程的两个实根,否则就输出“方程无实根” 的信息
4.1 选择结构和条件判断 例4.1 在例3.5的基础上对程序进行改进。 题目要求是求 方程的根。 由键盘输入a,b,c。假设a,b,c的值任意, 并不保证 。需要在程序中进行 判别,如果 ,就计算并输出方 程的两个实根,否则就输出“方程无实根” 的信息。 0 2 ax + bx + c = 4 0 2 b − ac 4 0 2 b − ac
解题思路: 输入a,b,c 计算dsc 真 假 disc<o 计算x1x2 输出无实根 输出x1x2
➢解题思路: 输入a,b,c 计算disc disc<0 计算x1 ,x2 输出无实根 输出x1 ,x2 真 假
# include≤ stdio h> include int main o double a, b, c, disc,x1,x2, p, qi scanf("%/lfo/lf%/lf",&a, &b, &c); 631 disc=b*b-4aCi 计算b24ac,disc的值变为-15
#include #include int main ( ) { double a,b,c,disc,x1,x2,p,q; scanf("%lf%lf%lf",&a,&b,&c); disc=b*b-4*a*c; 计算b2 -4ac,disc的值变为-15
if(disc<0)-15<0为真 printf( has not real roots\n else has not real roots {p=-b/(2.0*a) g=sqrt(disc)/(2.0*ai x1=p+gi X2=p-gi printf( real roots:\nx1=%07.2f\n x2=%72fn"x1X2) return o
if (disc<0) printf(“has not real roots\n”); else { p=-b/(2.0*a); q=sqrt(disc)/(2.0*a); x1=p+q; x2=p-q; printf(“real roots:\nx1=%7.2f\n x2=%7.2f\n”,x1,x2); } return 0; } -15<0为真
# include≤ stdio h> include int main o double a, b, c, disc,x1,x2, p, qi scanf("/lf/lf%/olf", &a, &b, &c);241 disc=b*b-4aCi 计算b2-4ac,disc的值变为8
#include #include int main ( ) { double a,b,c,disc,x1,x2,p,q; scanf("%lf%lf%lf",&a,&b,&c); disc=b*b-4*a*c; 计算b2 -4ac,disc的值变为8
if(disc<0)8<0为假 printf( has not real roots\n i else p=b/(2.0*a);p的值变为-1 q=sqrt(disc)/(20*a);q的值变为071 X1=p+qX1的值变为029 x2=p-qx2的值变为-171 printf( real roots:(nx1=%/07.2f\n x2=%72fn"x1X2); real roots: return o 1=-8.29 2 1.71
if (disc<0) printf(“has not real roots\n”); else { p=-b/(2.0*a); q=sqrt(disc)/(2.0*a); x1=p+q; x2=p-q; printf(“real roots:\nx1=%7.2f\n x2=%7.2f\n”,x1,x2); } return 0; } 8<0为假 p的值变为-1 q的值变为0.71 x1的值变为-0.29 x2的值变为-1.71
if (disc<o) printf( has not real roots\n i else p=-b/(20*a) g=sqrt(disc)/(2.0*ai x1=p+gi X2=p-gir printf( real roots: \nx1=%07.2f\n x2=%72f\n"rx1x2); return o 选择结构,用i语句实现的
if (disc<0) printf(“has not real roots\n”); else { p=-b/(2.0*a); q=sqrt(disc)/(2.0*a); x1=p+q; x2=p-q; printf(“real roots:\nx1=%7.2f\n x2=%7.2f\n”,x1,x2); } return 0; } 选择结构,用if语句实现的