数字黑洞

打印 上一主题 下一主题

主题 882|帖子 882|积分 2646

      一、4位数的数字黑洞
       任意给定一个4位数(不能所有位都相同),比如:3278,重新组合出最大数:8732,再重新组合出最小数:2378,相减,得到新的4位数(如不足则补0),重复这个过程,最后必然得到一个数字:6174。这个现象被称为:数字黑洞。
       编写一个程序,验证这个现象。
例如,给出四位数3278,则有验证过程如下:
8732-2378=6354
6543-3456=3087
8730-378=8352
8532-2358=6174
再如,给出四位数1011,则有验证过程如下:
1110-111=999  (不足4位,补0)
9990-999=8991 
9981-1899=8082
8820-288=8532
8532-2358=6174
        (1)编程思路。
编写函数void parse(int n,int *max,int *min),该函数的功能求出由整数n的四位数字组合成的最大数和最小数,分别通过形参max和min返回。
在函数中,定义一个数组int a[4],用于保存整数n的4位数字,然后将数组a按从小到大的顺序排列,之后各数字顺序组成最小数,逆序组成最大数。
(2)源程序。
[code]#include void parse(int n,int *max,int *min){    int a[4],i,j,t;    for (i=0; i
回复

使用道具 举报

0 个回复

正序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

玛卡巴卡的卡巴卡玛

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表