#include<stdio.h>
int main()
{
    int n,a,b,c,d,e;//n为数字,abcde表示数字
    scanf("%d",&n);
    e=n%10;
    d=(n%100)/10;
    c=(n%1000)/100;
    b=(n%10000)/1000;
    a=n/10000;
    if (a>0)printf("5\n");
    else if (b>0)printf("4\n");
    else if (c>0)printf("3\n");
    else if (d>0)printf("2\n");
    else printf("1\n");
    printf("%d %d %d %d %d\n",a,b,c,d,e);
    printf("%d%d%d%d%d\n",e,d,c,b,a);
    return 0;
}


点赞(110)
 

0.0分

5 人评分

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

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

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

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

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

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

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

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

评论列表 共有 35 条评论

懒人 6年前 回复TA
@c无言 printf("%d ", number); %d后面空格吧
again 6年前 回复TA
@木苏 不对吧
kitsuha 6年前 回复TA
#include<iostream>
#include<string>
#include<cstring>
using namespace std;
int main(){
	char a[1000]={0};
	cin>>a;
	int n=strlen(a);
	cout<<n<<endl;
	for(int i=0;i<=n-1;i++){
		cout<<a[i]<<" ";
	}
	cout<<a[n];
	cout<<endl;
	for(int j=n-1;j>=0;j--){
		cout<<a[j];
	}
	
	return 0;
}
为什么会出错啊
c无言 6年前 回复TA
#include<stdio.h>
#include<math.h>

int main()

{
	int i=0,n=0,k=0,m=0,y=0,number=0;
	scanf("%d", &i);
	k = i;				//用k保存输入的数
	while (i > 0)
	{
		i /= 10;	
			n+=1;		
	}
	printf("输入的数共有%d位\n", n);
	y = n;				//用y保存输入的位数
	for (int j = 0; j < y; j++)
	{
		n--;
		m = pow(10,n);
		number = (k / m)%10 ;
		printf("%d ", number);
	}
	printf("\n");
	for (int j = 0; j < y; j++)
	{
		m = pow(10, n);
		number = (k / m) % 10;
		printf("%d", number);
		n++;
	}
	return 0;

}

编译结果都没问题,答案确错的。错在哪里?求解
c无言 6年前 回复TA
#include<stdio.h>
#include<math.h>

int main()

{
	int i=0,n=0,k=0,m=0,y=0,number=0;
	scanf("%d", &i);
	k = i;				//用k保存输入的数
	while (i > 0)
	{
		i /= 10;	
			n+=1;		
	}
	printf("输入的数共有%d位\n", n);
	y = n;				//用y保存输入的位数
	for (int j = 0; j < y; j++)
	{
		n--;
		m = pow(10,n);
		number = (k / m)%10 ;
		printf("%d ", number);
	}
	printf("\n");
	for (int j = 0; j < y; j++)
	{
		m = pow(10, n);
		number = (k / m) % 10;
		printf("%d", number);
		n++;
	}
	return 0;

}

编译结果都没问题,为什么答案是错误的,求解
飘过的小小鱼 6年前 回复TA
@木苏 我这样写也不对。。。。
验题君 6年前 回复TA
@knight 编辑框里有代码语言的选择,插进去进去就是这种格式了
我是大笨熊 6年前 回复TA
这个...有毛病吗
#include <stdio.h>
#include <math.h>
int main(){
	int m,a,b,c,d,e,i,o,p,q,r,s;
	printf("请输入一个不超过五位的整数");
	scanf("%d",&m);
	a=m/10000;
	b=(m%10000)/1000;
	c=(m%1000)/1000;
	d=(m%100)/10;
	e=m%10;
	if(a>0) i=5;
	else if(b>0) i=4;
	else if(c>0) i=3;
	else if(d>0) i=2;
	else i=1;
	o=(pow(10,i-1))*e;
	p=(pow(10,i-2))*d;
	q=(pow(10,i-3))*c;
	r=(pow(10,i-4))*b;
	s=(pow(10,i-5))*a;
	printf("%d\n",i);
	printf("%d %d %d %d %d\n",a,b,c,d,e);
	printf("%d",o+p+q+r+s);
}
奋斗的人生 6年前 回复TA
有问题,如果输入的数小于五位数,就不对了
木苏 6年前 回复TA
@木苏 就是很麻烦