昔日少年郎 发表于 2018-3-7 21:20:14

给出一个不多于5位的整数,要求 1、求出它是几位数 2、分别输出每一位数字 3、按逆...

可否讲一下错在哪里?又该咋做?

Dr丶温 发表于 2018-3-8 08:03:56

1、首先要判定输入的是几位数:if(a>9999) 五位数;if(a>999) 四位数,这样判断到个位数
2、然后在 分别求出万位数千位数 百位数十位数个位数
比如:输入12345   万位数 = 12345/10000 = 1
千位数 = (12345 - 万位数*10000) / 1000 = 2
百位数= (12345 - 万位数*10000- 千位数 *1000)/ 100 = 3
十位数 = (12345 - 万位数*10000 - 千位数 *1000 - 百位数*100)/10 = 4
个位数 = 12345 - 万位数*10000 - 千位数 *1000 - 百位数*100 - 十位数 * 10 = 5

3、然后siwtch一下,判断是几位数,就选择将几位数输出,现在每一位都求出来了,什么姿势输出都行

说的不知看不看得懂,有更简便的算法求调教。。。

wjp 发表于 2018-3-8 10:36:56

a=a%10 a被赋值成他们的余数了while里面a%10>1只要a的余数大于1就一直循环
页: [1]
查看完整版本: 给出一个不多于5位的整数,要求 1、求出它是几位数 2、分别输出每一位数字 3、按逆...