
用C++给出一个不多于5位数的正整数,要求:1,求出它是几位数。2,分别输出每一个数字。3,按逆序输出各数
6个回答
展开全部
这是潭号强 书上的吧 我来做
记得
给我加分哦
#include<iostream>
using namespace std;
int main()
{int a,b,c,d,e,f,g,h,i;
int x=0;
cout<<"请输入一个不多于5位的正整数";
cin>>x;
if(x<10000&&x>=0)
{if(x<10)
{cout<<"x是一位数"<<x;}
else
if(x>=10&&x<100)
{a=x/10;
b=x%10;
cout<<"x是一个两位数"<<b<<a;}
else
if(x>=100&&x<1000)
{c=x/100;
d=(x/10)%10;
e=(x%100)%10;
cout<<"x是一个三位数"<<e<<" "<<d<<" "<<c;}
else
if(x>=1000&&x<10000)
{f=x/1000;
g=(x/100)%10;
h=(x/10)%100%10;
i=x%1000%100%10;
cout<<"x是一个四位数"<<i<<h<<g<<f;}}
else
cout<<"你输入的数字不符合要求";
return 0;
}
记得
给我加分哦
#include<iostream>
using namespace std;
int main()
{int a,b,c,d,e,f,g,h,i;
int x=0;
cout<<"请输入一个不多于5位的正整数";
cin>>x;
if(x<10000&&x>=0)
{if(x<10)
{cout<<"x是一位数"<<x;}
else
if(x>=10&&x<100)
{a=x/10;
b=x%10;
cout<<"x是一个两位数"<<b<<a;}
else
if(x>=100&&x<1000)
{c=x/100;
d=(x/10)%10;
e=(x%100)%10;
cout<<"x是一个三位数"<<e<<" "<<d<<" "<<c;}
else
if(x>=1000&&x<10000)
{f=x/1000;
g=(x/100)%10;
h=(x/10)%100%10;
i=x%1000%100%10;
cout<<"x是一个四位数"<<i<<h<<g<<f;}}
else
cout<<"你输入的数字不符合要求";
return 0;
}
展开全部
#include<stdio.h>
main()
{int x,a,b,c,d,e,n,z;
printf("请输入一个不大于5位的数:");
scanf("%d",&x);
a=x/10000;
b=(x-a*10000)/1000;
c=(x-a*10000-b*1000)/100;
d=(x-a*10000-b*1000-c*100)/10;
e=x-a*10000-b*1000-c*100-d*10;
if (a>0)
n=5;
else
{ if (b>0)
n=4;
else
{ if (c>0)
n=3;
else
{ if (d>0)
n=2;
else
n=1;
}
}
}
printf("这是一个%d位数\n",n);
switch(n)
{
case 1:
{printf("个位是%d\n",e);
z=e;
printf("逆序输出是:%d\n",z);
break;}
case 2:
{printf("十位是%d\n个位是%d\n",d,e);
z=e*10+d;
printf("逆序输出是:%d\n",z);
break;}
case 3:
{printf("百位是%d\n十位是%d\n个位是%d\n",c,d,e);
z=e*100+d*10+c;
printf("逆序输出是:%d\n",z);
break;}
case 4:
{printf("千位是%d\n百位是%d\n十位是%d\n个位是%d\n",b,c,d,e);
z=e*1000+d*100+c*10+b;
printf("逆序输出是:%d\n",z);
break;}
case 5:
{printf("万位是%d\n千位是%d\n百位是%d\n十位是%d\n个位是%d\n",a,b,c,d,e);
z=e*10000+d*1000+c*100+b*10+a;
printf("逆序输出是:%d\n",z);
break;}
}
}
main()
{int x,a,b,c,d,e,n,z;
printf("请输入一个不大于5位的数:");
scanf("%d",&x);
a=x/10000;
b=(x-a*10000)/1000;
c=(x-a*10000-b*1000)/100;
d=(x-a*10000-b*1000-c*100)/10;
e=x-a*10000-b*1000-c*100-d*10;
if (a>0)
n=5;
else
{ if (b>0)
n=4;
else
{ if (c>0)
n=3;
else
{ if (d>0)
n=2;
else
n=1;
}
}
}
printf("这是一个%d位数\n",n);
switch(n)
{
case 1:
{printf("个位是%d\n",e);
z=e;
printf("逆序输出是:%d\n",z);
break;}
case 2:
{printf("十位是%d\n个位是%d\n",d,e);
z=e*10+d;
printf("逆序输出是:%d\n",z);
break;}
case 3:
{printf("百位是%d\n十位是%d\n个位是%d\n",c,d,e);
z=e*100+d*10+c;
printf("逆序输出是:%d\n",z);
break;}
case 4:
{printf("千位是%d\n百位是%d\n十位是%d\n个位是%d\n",b,c,d,e);
z=e*1000+d*100+c*10+b;
printf("逆序输出是:%d\n",z);
break;}
case 5:
{printf("万位是%d\n千位是%d\n百位是%d\n十位是%d\n个位是%d\n",a,b,c,d,e);
z=e*10000+d*1000+c*100+b*10+a;
printf("逆序输出是:%d\n",z);
break;}
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include <stdio.h>
void main()
{
int num,a,b;
int c[10];
int sum=0;
scanf("%d",&num);
a=num;
while(num)
{
static int i=0;
c[i++]=num%10;
num/=10;
sum++;
}
printf("%d位数 \n",sum);
for(int i=sum-1;i>=0;i--)
printf("%d ",c[i]);
printf("\n");
for(;a>=1;)
{
b=a%10;
a=a/10;
printf("%d ",b);
}
}
3个条件都满足
void main()
{
int num,a,b;
int c[10];
int sum=0;
scanf("%d",&num);
a=num;
while(num)
{
static int i=0;
c[i++]=num%10;
num/=10;
sum++;
}
printf("%d位数 \n",sum);
for(int i=sum-1;i>=0;i--)
printf("%d ",c[i]);
printf("\n");
for(;a>=1;)
{
b=a%10;
a=a/10;
printf("%d ",b);
}
}
3个条件都满足
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include <iostream>
using namespace std;
void main()
{
long n;
int a[5],i=0,j;
cin>>n;
while(n)
{
a[i++]=n%10;
n/=10;
}
cout<<i<<endl;
for(j=i-1;j>=0;j--)
cout<<a[j]<<' ';
cout<<endl;
for(j=0;j<i;j++)
cout<<a[j]<<' ';
cout<<endl;
}
using namespace std;
void main()
{
long n;
int a[5],i=0,j;
cin>>n;
while(n)
{
a[i++]=n%10;
n/=10;
}
cout<<i<<endl;
for(j=i-1;j>=0;j--)
cout<<a[j]<<' ';
cout<<endl;
for(j=0;j<i;j++)
cout<<a[j]<<' ';
cout<<endl;
}
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
用字符串来处理,应该是所有方法里面最简单的了~~~~
#include<iostream>
#include<string.h>
using namespace std;
int main()
{
char ch[10];
cin>>ch;
int len=strlen(ch),i;
cout<<len<<endl;
for(i=0;i<len;i++)
cout<<ch[i]<<" ";
cout<<endl;
for(i=len-1;i>=0;i--)
cout<<ch[i]<<" ";
cout<<endl;
return 0;
}
#include<iostream>
#include<string.h>
using namespace std;
int main()
{
char ch[10];
cin>>ch;
int len=strlen(ch),i;
cout<<len<<endl;
for(i=0;i<len;i++)
cout<<ch[i]<<" ";
cout<<endl;
for(i=len-1;i>=0;i--)
cout<<ch[i]<<" ";
cout<<endl;
return 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询