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

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

第一种方法:

#include<stdio.h>
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再摸10

    return 0;

}

结果:

下面进行讲解:

上面的第一个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 系统把小数点舍掉就是2   2取模就是2 啊  你看2除以10 余几啊?就余2啊!!!!!哈哈!!!!!

扫描二维码关注公众号,回复: 12674693 查看本文章

第二种方法:

//规律:除以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语言后面有很多基础详解系列,敬请期待!

猜你喜欢

转载自blog.csdn.net/qq_35207086/article/details/110240030