1
输入两个数值。
2
比较大小。
3
输出结果。
以整型为例,代码如下:
#include
int
main()
{
int
a,b
scanf("%d%d",&a,&b)
if(a>b)
printf("%d>%d\n",a,b)
else
if(a
==
b)
printf("%d=%d\n",a,b)
else
printf("%d<%d\n",a,b)
}
首先,我们需要接收键盘的输入,将三个数字存入对应的变量中。为了提高适用性,在这里建议大家使用double类型的变量来接收。然后,再进行第一轮比较,以便找出最大数。
比较方法:
1)比较从第一个数开始,先比较第一个数和第二个数的大小,如果第一个数大于第二个数,则将第一个数和第二个数互换;不大于(即等于或小于)则不作处理。
2)然后,再将第二个数和第三个数比较,同样,若大于则将它们互换。
注意:
如果仅是需要找出最大数,只需要进行一轮比较即可;同样的道理,如果只需要找出最小数,也只需要进行一轮比较,只是将上面的大于改成小于即可。
2
如果同时还需要求出最小数和中间数,则还需要进行第二轮比较。我们再从第一个数开始,方法与第一轮一样,只是已经不需要进行第一轮中的第2)步比较,因为最后的第三个数已经是最大。
第二轮比较方法:
1)比较从第一个数开始,先比较第一个和第二个数的大小,如果第一个数大于第二个数,则将第一个数和第二个数互换。
这样,就分别得到了最小数、中间数和最大数。
如何实现
下面,根据上面的思路来编写C语言代码。为了让大家理解起来更容易,我这里采用的是思路最简单的编码方法,而不是代码最精简的方法。同时,我也尽量做到为每句关键的代码都添加相应的注释。
首先,包含相应的头文件<stdio.h>,并添加一个main函数。
随后接收输入的三个数。在此需要注意的是,接收double类型的数值时应使用%lf,而不是%f。
接收输入的数之后,便可以开始进行第一轮比较。注意,第一轮比较共有两步,第一步是将第一个数与第二个数比较,第二步是将第二个数与第三个数比较。
然后,进行第二轮比较。
5
最后,输出结果。注意,输出时使用%g参数的作用是打印小数时不输出末尾的0,这样更加整洁漂亮些。
参考资料
百度经验.百度[引用时间2018-5-3]