整数分解并输出
相信很多人在学习c语言的时候一定遇到过,这样的一个题目输入一个整数,然后将整数分解输出,我们先来看下面的代码
1 | do { |
上面的代码可以将数据x进行一个倒序的输出,其中的if判断是为了来判断是否为最后一个数 ,当到输出最后一个数的时候就不在输出空格了。现在问题来了,如果我们想正序输出应该怎么做呢?其中的一个做法便是,在此之前就可以先将数据进行倒置我们来看下面的代码
1 | int t = 0; |
以上的代码首先对数据进行取余,取出数据的最右面数据,我们将数据加到t中,因为t初始值为0,在经过上面的语句之后,t的值就会变为数据最右面的值,而当下一次进入循环时,t的值会乘以10,这样我们第一次得到的d的值就会向做移动,而第二次得到的值就会被加到后面,下面以521这个数据来进行举列
x | d | t |
---|---|---|
521 | 1 | 1 |
52 | 2 | 12 |
5 | 5 | 125 |
最后我们可以得到如下的代码
1 |
|
先将数据进行倒置,然后再进行倒叙输出,经过这样的两次反转,我们就实现了正序的输出一个数据,事实上我们这样做非常的麻烦,可以有更好的方法来完成这件事。请查看高级篇