首页 理论教育 三个数排序,输入A、B、C,由小到大输出

三个数排序,输入A、B、C,由小到大输出

时间:2023-11-25 理论教育 版权反馈
【摘要】:输入A、B、C 3个数值,然后由小到大输出。做什么1)用户输入3个数,所以要有3个文本框。2)1个“排序”按钮。3)3个用于说明文本框的标签。随机在3个碗中分别放入一个苹果,这3个苹果大小未知,且假设不能用肉眼直接判断其大小。可以看出,通过这次比较后,A中的苹果就是3个中最小的那个了。这样A、B、C中的苹果就排好序了。

三个数排序,输入A、B、C,由小到大输出

【例4-14】输入A、B、C 3个数值,然后由小到大输出。

1.用单行条件语句实现

按“三步法”原则分析如下。

978-7-111-49659-5-Chapter04-126.jpg做什么

1)用户输入3个数,所以要有3个文本框

2)1个“排序”按钮

3)3个用于说明文本框的标签。

978-7-111-49659-5-Chapter04-127.jpg怎么做

步骤描述如下:

1)读取文本框中的数据到3个变量A、B、C中。

在进行第2)步之前,先分析一下这样一个问题:假设桌子上有3个碗,分别为A、B、C。随机在3个碗中分别放入一个苹果,这3个苹果大小未知,且假设不能用肉眼直接判断其大小。所以必须进行两两比较,比较过程如下:

①比较A、B中的苹果(用天平或弹簧秤),如果A中的苹果比B中的苹果大,则交换A、B中的苹果;否则A、B中保持不变。比较完毕后,A中是较小者。

②比较A、C中的苹果,如果A中的苹果比C中的苹果大,则交换A、C中的苹果;否则保持不变。可以看出,通过这次比较后,A中的苹果就是3个中最小的那个了。而B、C二者还是未定的,因为它们两个都大于A中的苹果。

③比较B、C中的苹果,如果B中苹果大于C中苹果,则交换B、C中的苹果;否则保持不变。这样A、B、C中的苹果就排好序了。

这种方法采用的是3个碗的位置固定不变,交换的是里面的苹果。不难想象,这个方法同样适用于本例问题。程序读取用户输入的3个数据到变量A、B、C中,就可以把它们看作3个碗,然后两两进行比较,所以产生了下面的2)、3)、4)步。

2)比较A、B,如果A>B,则交换A、B中的值。

3)比较A、C,如果A>C,则交换A、C中的值。

4)比较B、C,如果B>C,则交换B、C中的值。

5)输出A、B、C。

978-7-111-49659-5-Chapter04-128.jpg实现

1)读取数据:(www.xing528.com)

978-7-111-49659-5-Chapter04-129.jpg

2)比较A、B:

978-7-111-49659-5-Chapter04-130.jpg

3)比较A、C:

978-7-111-49659-5-Chapter04-131.jpg

4)比较B、C:

978-7-111-49659-5-Chapter04-132.jpg

5)输出:

978-7-111-49659-5-Chapter04-133.jpg

完整代码如下。

978-7-111-49659-5-Chapter04-134.jpg

978-7-111-49659-5-Chapter04-135.jpg

运行结果如图4-28所示。

978-7-111-49659-5-Chapter04-136.jpg

图4-28 排序

因为采用的是单行条件语句,所以是不能换行的,所有的语句必须写在同一行中,语句之间用“;”分隔,如:If A>B Then t=A:A=B:B=t,并且这里没有用到Else分支,也就是说,如果A<=B,则不进行任何操作。

2.用块结构条件语句实现

完整代码如下。

978-7-111-49659-5-Chapter04-137.jpg

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

我要反馈