小言_互联网的博客

给一个不多于五位的正整数,按要求输出。

258人阅读  评论(0)

1、求出他分别是几位数字。
2、分别输出每一位数字。
3、按逆序输出各位数字。

1、求其是几位数字,可以将这个数字一次丢掉一位数字,最后通过丢掉的次数就知道是几位数字。
程序为:

int Digit(int n)
{   int tmp=0;
	while(n!=0)
	{
		n/=10;
		tmp++;
	}
	return tmp;
}

2、分别输出每一位数字,每次用这个数的10的位数减1平方除这个数,然后对各个数取余得到剩下的数字,重复这个步骤,就可以依次输出每一位数字。
程序为:

void Number(int n)
{
	int tmp=0;
	int power=(int)pow(10.0,Digit(n)-1);
	while(power!=0)
	{
		tmp=n/power;
		printf("%d   ",tmp);
		n%=power;
		power/=10;
	}
	printf("\n");
}

3、逆序输出就是从最后一位数字开始丢掉。
程序为:

void Reverse(int n)
{
	int tmp;
	while(n)
	{
		tmp=n%10;
		printf("%d   ",tmp);
		n/=10;
	}
	printf("\n");
}


转载:https://blog.csdn.net/weixin_44233867/article/details/102551621
查看评论
* 以上用户言论只代表其个人观点,不代表本网站的观点或立场