参考了 作者:雨滴在心头 的代码,进行了一些补充完善(源代码未考虑输入的数超过5位数的情况,可能是题目要求不那么严格,除此之外就是输入小于5位数的数据时,源代码不能排除无效数据0),亲测可以通过网页编译验证。


参考代码:

#include <stdio.h>
int main()
{
		int m, n, a, b, c, d, e;
		scanf("%d", &n);
		m = n / 10000;
		if (m > 9)
			printf("Bad Input\n");			//确保输入的数不超过五位
		else
		{
			a = n % 10;			//个位数
			b = (n % 100) / 10;		//十位数
			c = (n % 1000) / 100;		//百位数
			d = (n % 10000) / 1000;		//千位数
			e = n / 10000;			//万位数
			if (e > 0)
			{
				printf("5\n");
				printf("%d %d %d %d %d\n", e, d, c, b, a);
				printf("%d%d%d%d%d\n", a, b, c, d, e);
			}
			else if (d > 0)
			{
				printf("4\n");
				printf("%d %d %d %d\n", d, c, b, a);
				printf("%d%d%d%d\n", a, b, c, d);
			}
			else if (c > 0)
			{
				printf("3\n");
				printf("%d %d %d\n", c, b, a);
				printf("%d%d%d\n", a, b, c);
			}
			else if (b > 0)
			{
				printf("2\n");
				printf("%d %d\n", b, a);
				printf("%d%d\n", a, b);

			}
			else if (a > 0)
			{
				printf("1\n");
				printf("%d\n", a);
				printf("%d\n", a);

			}
		}
	return 0;
}


点赞(2)
 

0.0分

0 人评分

C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:

一点编程也不会写的:零基础C语言学练课程

解决困扰你多年的C语言疑难杂症特性的C语言进阶课程

从零到写出一个爬虫的Python编程课程

只会语法写不出代码?手把手带你写100个编程真题的编程百练课程

信息学奥赛或C++选手的 必学C++课程

蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程

手把手讲解近五年真题的蓝桥杯辅导课程

评论列表 共有 0 条评论

暂无评论