c语言输入一个不多于5位正整数要求:求出它是几位数;分别打印出每一位数字;按逆序输出各位数字。
请问这个程序错在哪里#include<stdio.h>intmain(void){longintx;inty,i=1;printf("请输入一个不超过100000的整数:...
请问这个程序错在哪里
#include <stdio.h>
int main(void)
{
long int x;
int y,i=1;
printf("请输入一个不超过100000的整数:",x);
scanf("%ld",&x);
if(x>99999||x<1) printf("你所输入的数据超出计算范围\n");
else
{
do
while(x!=0)
{
y=x%10;
printf("%d\t",y);
x=x/10;
i=i+1;
}
printf("\n这个数共有%d位\n",i);
return 0;
} 展开
#include <stdio.h>
int main(void)
{
long int x;
int y,i=1;
printf("请输入一个不超过100000的整数:",x);
scanf("%ld",&x);
if(x>99999||x<1) printf("你所输入的数据超出计算范围\n");
else
{
do
while(x!=0)
{
y=x%10;
printf("%d\t",y);
x=x/10;
i=i+1;
}
printf("\n这个数共有%d位\n",i);
return 0;
} 展开
展开全部
#include <stdio.h>
int main(void)
{
long int x;
int y,i=1;
printf("请输入一个不超过100000的整数:"); // <------请把,x去掉
scanf("%ld",&x);
if (x>99999||x<1) printf("你所输入的数据超出计算范围\n");
else
{
while (x!=0) // <------请把 do 去掉
{
y=x%10;
printf("%d\t",y);
x=x/10;
i=i+1;
}
printf("\n这个数共有%d位\n",i);
}
return 0; // <------这里return 0;放最外层计较好
}
int main(void)
{
long int x;
int y,i=1;
printf("请输入一个不超过100000的整数:"); // <------请把,x去掉
scanf("%ld",&x);
if (x>99999||x<1) printf("你所输入的数据超出计算范围\n");
else
{
while (x!=0) // <------请把 do 去掉
{
y=x%10;
printf("%d\t",y);
x=x/10;
i=i+1;
}
printf("\n这个数共有%d位\n",i);
}
return 0; // <------这里return 0;放最外层计较好
}
展开全部
#include<stdio.h>
int main()
{
int n,num=0,i,a[5],m;
scanf("%d",&n);
for(i=0;i<=4;i++)
{
if(n!=0)
{
m=n%10;
a[i]=m;
n=n/10;
num++;
} //上面这一块为了将数据存起来,后面好拿出来用
else
break;
}
printf("%d\n",num);
for(i=num-1;i>=0;i--)
printf("%d ",a[i]);
printf("\n");
for(i=0;i<num;i++)
printf("%d ",a[i]);
return 0;
}
望采纳
int main()
{
int n,num=0,i,a[5],m;
scanf("%d",&n);
for(i=0;i<=4;i++)
{
if(n!=0)
{
m=n%10;
a[i]=m;
n=n/10;
num++;
} //上面这一块为了将数据存起来,后面好拿出来用
else
break;
}
printf("%d\n",num);
for(i=num-1;i>=0;i--)
printf("%d ",a[i]);
printf("\n");
for(i=0;i<num;i++)
printf("%d ",a[i]);
return 0;
}
望采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#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);
}
}
绝对正确
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);
}
}
绝对正确
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include<iostream.h>
#include<cstdlib>
void main()
{
int a;
cin>>a;
int b=a/10000;
int c=(a%10000)/1000;
int d=(a%1000)/100;
int f=(a%100)/10;
int e=(a%10);
cout<<e<<f<<d<<c<<b<<endl;
system("pause");
}
#include<cstdlib>
void main()
{
int a;
cin>>a;
int b=a/10000;
int c=(a%10000)/1000;
int d=(a%1000)/100;
int f=(a%100)/10;
int e=(a%10);
cout<<e<<f<<d<<c<<b<<endl;
system("pause");
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
do
while(x!=0)
{
y=x%10;
printf("%d\t",y);
x=x/10;
i=i+1;
}
while放后面
do
{
y=x%10;
printf("%d\t",y);
x=x/10;
i=i+1;
} while(x!=0);
while(x!=0)
{
y=x%10;
printf("%d\t",y);
x=x/10;
i=i+1;
}
while放后面
do
{
y=x%10;
printf("%d\t",y);
x=x/10;
i=i+1;
} while(x!=0);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询