用c++编程:给出一个不多于5位的正整数,要求,求出它是几位数,分别输出每一位数字,按逆序打印每个数

例如:输入格式:123(回车)输出:3123321... 例如:

输入格式:123(回车)

输出:3

1 2 3

321
展开
 我来答
zhengyuhong520
2010-11-24 · TA获得超过1157个赞
知道小有建树答主
回答量:516
采纳率:0%
帮助的人:501万
展开全部

#include <iostream>

using namespace std;

void main()

{

 const int N=10;

 int a[N];

 int count=1;

 cout<<"请输入一个数字";

 int n,i=0;

 cin>>n;

int m=n;

 while(n>=10)

 {

  count++;

  a[i++]=n%10;

  n=n/10;

 }

 a[i]=n;

 cout<<count<<"\n"<<m<<endl;

  for(i=0;i<count;i++)

   cout<<a[i]<<" ";

  cout<<endl;

}

请看图,成功

我又不乱来9527z
推荐于2017-09-16 · TA获得超过116个赞
知道答主
回答量:65
采纳率:0%
帮助的人:71.2万
展开全部
#include <iostream>
using namespace std;
void main()
{
int n,a,b,c,d;
cout<<"please input the number:"<<endl;
cin>>n;
if(n/1000>=1&&n/1000<10) //四位数的情况
{
a=n/1000;//千位数
b=n%1000/100;//百位数
c=n%1000%100/10;//十位数
d=n%10;//个位数
printf("4\n");
printf("%d\n",n);
printf("%d%d%d%d",d,c,b,a);
printf("\n");
}
if(n/100>=1&&n/100<10) //三位数的情况
{
a=n/100;
b=n%100/10;
c=n%10;
printf("3\n");
printf("%d\n",n);
printf("%d%d%d",c,b,a);
printf("\n");
}
if(n/10>=1&&n/10<10)//两位数的情况
{
a=n/10;
b=n%10;
printf("2\n");
printf("%d",n);
printf("%d%d",b,a);
printf("\n");
}
}

因为一位数没有什么意思,所以旧没写。希望对你有帮助
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友42c3ee5
2019-08-05
知道答主
回答量:2
采纳率:0%
帮助的人:1406
展开全部
#include<stdio.h>
#include<math.h>
int main()
{
int n,m,i=1,x;
printf("enter n:");
scanf("%d",&n);
m=n;
x=n;
if(n>99999 || n<=0)
printf("请输入一个不多于5位数的正整数\n");
while(n>=10)
{
i++;
n=n/10;
}
printf("这是一个%d位数\n",i);
int a,b,c;
printf("按顺序分别输出:");
a=pow(10,(i-1));
b=a*10;
while(a>=1)
{
c=(x%b-x%a)/a;
printf(" %d ",c);
a=a/10;
b=b/10;
}
printf("\n");
printf("按逆序输出:");
while(m!=0)
{
printf("%d",m%10);
m/=10;
}
return 0;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
94...1@qq.com
2012-07-19
知道答主
回答量:32
采纳率:0%
帮助的人:12.7万
展开全部
#include<stdio.h>
int main()
{
int a,i,z,n1;
int n=0;
scanf("%d",&a);
if((a>=0)&&(a<=100000))
{ int b=a;
while(a)
{
a=a/10;
n+=1;
}
printf("%d\n",n);

for(i=1;i<=n;i++)
{
z=b%10;
b=b/10;
printf("%d ",z);
}

}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
即将告别军营
2019-09-06
知道答主
回答量:1
采纳率:0%
帮助的人:710
展开全部

#include <iostream>

#include <iomanip>

using namespace std;

  int main()

  {

int m,n;

cin>>m;

if(m>99999)

cout<<"shu zi tai da ";

if(m>9999&&m<=99999)

{     

cout<<"this is 5 wei shu"<<endl;

int a,b,c,d;

a=m/10;//4位 

b=a/10;//3 

c=b/10;//2 

d=c/10;//1 

int e,f,g,h,j;

e=m%10;//得到末位数

f= a%10;//倒数第二位

g=b%10;//倒数第三位

h=c%10;//倒数第二位

j=d%10;//倒数第一位

n=e*10000+f*1000+g*100+h*10+j;


 cout<<n<<endl;

 return 0;

}

if(m>999&&m<=9999)

{

int l,o,p,q,r,s,t;

l=m/10;

o=l/10;

p=o/10;

q=m%10;

r=l%10;

s=o%10;

t=p%10;

n=q*1000+r*100+s*10+t;

cout<<"this is 4 wei shu"<<endl<<n<<endl;

}

if(m>99&&m<=999)

{

int A,B,C,D;

A=m/10; 

B=A/10;

C=m%10;

D=A%10;

n=C*100+D*10+B;

cout<<"this is 3 wei shu"<<endl;

cout<<n<<endl;

}

if(m>9&&m<=99)

{

int X,Y;

X=m/10;

Y=m%10;

n=Y*10+X;

cout<<"this is 2 wei shu"<<endl<<n<<endl;

}

if(m>=0&&m<=9)

{

cout<<"this is 1 wei shu "<<endl<<m<<endl;

}


return 0;


}


已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(5)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式