解题思路:我们可以使用一个for循环来判断输入的是几位数,然后可以用一个函数POW它的作用是pow(a,b) a的b次方求顺序输出;

注意事项:  这个代码可以帮助您更好的理解循环,pow函数,以及数的拆 合。这个代码可以判断任何几位数  希望可以给屏幕面前的朋友您一点帮助;


参考代码:

#include<stdio.h>
#include<math.h>
main()
{
	int n,k=10,count=0,t;
	int a;
	scanf("%d",&n);
	t=n;
	for(k=10;t>0;t=t/k)  //判断几位数 
	{
		count++;
	}
	printf("%d\n",count);
	t=n;
	for(int i=count-1;i>=0;i--) //循环总为数-1次 
	{ 
		a=t/pow(10,i);//使用pow函数来顺序输出
		a=a%10;  //这个的意思是 除以10的几次方后取余  列如:12345/10000=1,1%10=1,12345/1000=12 12%10=2 
		printf("%d ",a);
	}
	printf("\n");
	for(int j=1;j<=count;j++) //反序输出 
	{
		a=n%10; //先求最低为 
		n=n/10;  //删除最低为 
		printf("%d",a);
	}
}

也可以用这种方法来判段回文数

#include<stdio.h>
#include<math.h>
main()
{
	int n,a,j=0;
	int c=0;
	int sum=0,k=0;
	scanf("%d",&n);
	c=n;
	int arr[9];
	while(n>0)
	{
		a=n%10;
		arr[j++]=a;
		k++;
		n=n/10;
		
	}
	for(int i=0;i<j;i++,k--)
	{
		sum+=arr[i]*pow(10,k-1);
	}
	printf("%d\n",sum);
	if(sum==c)
	{
		printf("yes");
	}
	else{
		printf("NO");
	}
 }


点赞(0)
 

0.0分

0 人评分

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

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

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

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

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

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

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

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

评论列表 共有 0 条评论

暂无评论