理论教育 比较3个数大小,求最大值

比较3个数大小,求最大值

时间:2023-11-21 理论教育 版权反馈
【摘要】:实例效果:比较a,b,c这3个数的大小,将最大值赋给max。要点解析:方法1:3个数比较两次,就可以找到最大者。运行结果:程序说明:第1条if语句执行之后,将两个数中的较大者存入max中。在第2条if语句中再比较max和第3个数的关系,若max比第3个数小,则将第3个数存入max中,此时max中就是3个数中的最大值。

比较3个数大小,求最大值

实例效果:

比较a,b,c这3个数的大小,将最大值赋给max。程序运行结果如右图所示。

要点解析:

方法1:3个数比较两次,就可以找到最大者。但3个数都可能是最大者,所以需要根据比较的结果给max赋值。本题属于多分支问题,用多分支if语句实现。

编写程序:

创建一个名为“ch4_ 1 _1.c”的新文件,在编辑窗口中输入下面的程序代码。

运行结果:

程序说明:

(1)当a=3,b=2,c=1时,判断条件(a>b && a>c)为“真”,则执行max = a语句,之后if语句结束,执行其后的printf()语句。

(2)当a =2,b =3,c = 1时,判断条件(a >b && a >c)为“假”,流程转到else分支,判断第二个条件(b>a&& b>c)为“真”后,执行max = b语句,之后if语句结束,执行其后的printf()语句。

(3)当a=1,b=2,c=3时,判断条件(a > b && a > c)和(b>a&&b>c)都为“假”,流程转到最后的else分支,执行max = c语句,之后if语句结束,执行其后的printf()语句。

(4)多分支的if语句,只执行某个条件成立后的分支语句,其他语句都不执行。

方法2:用“if语句的嵌套”形式实现。该题用这种方法来实现并不是最好的,但希望从这个例子中看出嵌套的结构特点。

编写程序:(www.daowen.com)

创建一个名为“ch4_1_2.c”的新文件,在编辑窗口中输入下面的程序代码。

运行结果:

程序说明:

(1)a=3,b=2,c=1时,程序判断a<b即3 <2为“假”,流程转到else分支,判断a<c即3<1为“假”后,执行内嵌if语句的else分支,即执行max = a,之后if语句结束,执行其后的printf()语句。

(2)a =2,b =3,c = 1时,程序判断a<b即2 <3为“真”,流程转到if分支的内嵌语句,判断b < c即3<1为“假”后,执行内嵌if语句的else分支,即执行max = b,之后if语句结束。

(3)a=1,b=2,c=3时,程序判断a<b即1 <2为“真”,流程转到if分支的内嵌语句,判断b <c即2 <3为“真”后,执行内嵌if语句的if分支,即执行max = c,之后if语句结束。

(4)if语句允许嵌套,但嵌套的层数不宜太多。在实际编程时,应适当控制嵌套层数(2~3层)。

方法3:用两条if语句实现。

编写程序:

创建一个名为“ch4_1_3.c”的新文件,在编辑窗口中输入下面的程序代码。

运行结果:

程序说明:

第1条if语句执行之后,将两个数中的较大者存入max中。在第2条if语句中再比较max和第3个数的关系,若max比第3个数小,则将第3个数存入max中,此时max中就是3个数中的最大值。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈