谭浩强c语言五位数的输入输出问题

输入一个不多于5位的整数,要求:

1.输出它的位数

2.分别输出每位数字

3.按输出每一位数字

代码如下:

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include<math.h>
#include<stdlib.h>
#include<algorithm>
#include <iostream>
using namespace std;
int main()
{
	int i, x;
	int n[5] = { 0 };
	printf("请输入数字,以回车结束");
	scanf("%d", &x);
	n[0] = x / 10000;
	n[1] = x / 1000 % 10;
	n[2] = x / 100 % 10;
	n[3] = x / 10 % 10;
	n[4] = x % 10;
	for (i = 0; i < 5; i++)
	{
		if (n[i] != 0)
		{
			printf("这个数是%d位数\n", 5 - i);
			break;
		}
	}
	printf("将它按位输出:");
	for (i = 0; i < 5; i++)
	{
		if (n[i] != 0)
		{
			for (; i < 5; i++)
			{
				printf("%d ", n[i]);
			}
		}

	}
	printf("\n将它倒序输出:");
	for (i = 4; i >= 0; i--)
	{
		if (n[i] == 0)
			continue;
		else
			printf("%d", n[i]);

	}
	return 0;
}

CSDN摸鱼这么多年,第一次发帖,楼主还在初学阶段,如有错误各位尽请指正。