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

对一个数如何得出它是几位数并求出其个位、十位、百位、千位…

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

代码如下

#include 
#include 
int main()
{
	int n;
	int i;
	int j=0;
	int k;
	int count = 0;                      //计数
	printf("请输入不多于五位的正整数:");
	scanf("%d",&n);                     //输入正整数
	int m=n;

//逆序输出      
	printf("逆序输出:");
	for(i=1;i<=5;i++)              
	{
		j=n%10;                          //得尾数
		n/=10;                           //去尾数
		count++;
		printf("%d",j);
		if(n==0)
		{
			break;
		}
	}
	printf("\n");

printf("位数为%d\n",count);                  //输出位数

//顺序输出
printf("顺序输出:");
	for(i;i>=1;i--)
	{
		k=m/(int)pow((float)10,(float)count-1);       //得首位
		m%=(int)pow((float)10,(float)count-1);
		count--;
		printf("%d",k);
	}

	printf("\n");
	
	return 0;
}

答案

请输入不多于五位的正整数:12345
逆序输出:54321
位数为5
顺序输出:12345
请按任意键继续. . .

你可能感兴趣的:(给一个不多于5位的正整数,要求: 1.求出它是几位数; 2.分别输出每一位数字; 3.按逆序输出各位数字;)