题目 1009: [编程入门]数字的处理与判断--重新学习C语言3

题目描述
给出一个不多于5位的整数,要求 1、求出它是几位数 2、分别输出每一位数字 3、按逆序输出各位数字,例如原数为321,应输出123
输入
一个不大于5位的数字
输出
三行 第一行 位数 第二行 用空格分开的每个数字,注意最后一个数字后没有空格 第三行 按逆序输出这个数
样例输入
12345
样例输出
5
1 2 3 4 5
54321

#include<stdio.h>
#include<math.h>

int main()
{
	int num;
	int bit_num;

	scanf("%d", &num);

	for (int i = 1; i <= 100000000000000;  i++)
	{
		int z = pow(10, i);

		if ((num / z)==0)
		{
			bit_num = i;
			printf("%d\n", i);
			break;
		}
	}

	int num1 = num;
	for (int i = bit_num; i >= 1; i--)
	{
		int z = pow(10, i-1);

		num1 = num / z;
		printf("%d ", num1%10);
		
	}

	printf("\n");

	for (int i = 1; i <= bit_num; i++)
	{
		printf("%d", num % 10);
		num = num / 10;
	}
	//int z;
	//z = pow(5, 2);
	//printf("%d ", z);//pow(5, 2)不能直接打印输出
	return 0;
}

版权声明:本文为chenyouledashen原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。