C语言系列|C语言如何把多位数的每一位提取出来,(例如(四位数2345,把个、十、百、千位提取出来)超级详解)

本次讲解的是如何把多位数的每一位提取出来,例如一个四位数:2345:一千二百三十四。分别把他的个、十、百、千位提取出来。我们用两种方法:
第一种方法:

#include int main(){int num=2345; //将4位数的每一个都取出来printf("个位:%d\n",num%10); printf("十位:%d\n",num/10%10); printf("百位:%d\n",num/100%10); printf("千位:%d\n",num/1000%10); //规律:除以10再摸10return 0; }


结果:
C语言系列|C语言如何把多位数的每一位提取出来,(例如(四位数2345,把个、十、百、千位提取出来)超级详解)
文章图片

下面进行讲解:
上面的第一个printf输出:num%10是取模运算,就是把2345除以10的余数是5,把个位数5提取出来了!
同样的第二个十位,为什么要除以10后再取模呢?因为想要取出十位的4,就要把个位上的5去掉,所以先除以10,就是234.5,系统默认是234,因为系统把小数点去掉了,因为我们是int类型啊,所以5就不见了,再取模运算,就把十位上的4取出来了。
百位上除以100就不用说了吧,除以100,就是23.45,自然就是23。所以再取模即是百位上的3取出来了!
千位就不用说了吧,除以1000,就是2.345 系统把小数点舍掉就是22取模就是2 啊你看2除以10 余几啊?就余2啊!!!!!哈哈!!!!!

第二种方法:
//规律:除以10再摸10 while(num>0){ printf("%d\n",num%10); num /=10; //取出个位数字后,立即去掉个位数字 } return 0;

这个就不用多说了,只要num大于0就一直循环,printf输出就是先取模运算,取出个位数字的数字5,因为个位数字取出不需要除以10啊 对不!然后 个位数字取出来后 就就进行除以10,得到234.5,系统默认取234,所以再取模就是十位上的4了,对吧,就这样持续下去,就全都取出来了!剩下的百位就是234/10=23.4,默认是23,因为系统把小数点去掉了,因为我们是int类型啊,然后取模就是3了。OK就是这样了,哈哈,大家都没明白了吧!!!!!!!!!!!
【C语言系列|C语言如何把多位数的每一位提取出来,(例如(四位数2345,把个、十、百、千位提取出来)超级详解)】拜拜,C语言后面有很多基础详解系列,敬请期待!

    推荐阅读