C语言。帮忙看下这个小程序错哪了,很简单
要求为将一个整数逆序输出。整数的范围0到10000。我的程序:#include<stdio.h>voidmain(){intn,a[5],i=0;scanf("%d",&...
要求为将一个整数逆序输出。整数的范围0到10000。
我的程序:
#include<stdio.h>
void main()
{
int n,a[5],i=0;
scanf("%d",&n);
while(n)
{ a[i]=n%10;
n=n/10;
i++;
}
printf("%d",a[i]);
}
我少输了一行。。。应该是
#include<stdio.h>
void main()
{
int n,a[5],i=0,k;
scanf("%d",&n);
while(n)
{ a[i]=n%10;
n=n/10;
k=i;
i++;
}
for(i=0;i<=k;i++)
printf("%d",a[i]);
}
可是这个提交上去还是WRONGANSWER呢、、、 展开
我的程序:
#include<stdio.h>
void main()
{
int n,a[5],i=0;
scanf("%d",&n);
while(n)
{ a[i]=n%10;
n=n/10;
i++;
}
printf("%d",a[i]);
}
我少输了一行。。。应该是
#include<stdio.h>
void main()
{
int n,a[5],i=0,k;
scanf("%d",&n);
while(n)
{ a[i]=n%10;
n=n/10;
k=i;
i++;
}
for(i=0;i<=k;i++)
printf("%d",a[i]);
}
可是这个提交上去还是WRONGANSWER呢、、、 展开
6个回答
展开全部
//最简化:
#include<stdio.h>
void main()
{
int n;
scanf("%d",&n);
while(n)
{
printf("%d",n%10);
n/=10;
}
}
//只用1个变量和四行语句就可以搞定的问题,你用上八九行,还做了好多不必的动作,那老师能给你高分才怪 看我改的代码,除了空白符,每个字符都不能少,也不必添,多清爽
#include<stdio.h>
void main()
{
int n;
scanf("%d",&n);
while(n)
{
printf("%d",n%10);
n/=10;
}
}
//只用1个变量和四行语句就可以搞定的问题,你用上八九行,还做了好多不必的动作,那老师能给你高分才怪 看我改的代码,除了空白符,每个字符都不能少,也不必添,多清爽
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
顺序都没变的话你干嘛不直接在while循环里面printf掉……,不要k,直接在那一行printf("%d",a[i])不就可以了吗?而且数据最大就五位,那么可以考虑把while换成(if (i <= 5))感觉这样就差不多了?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
输出错误。
for(int i=0;i<5;i++)
printf("%d",a[i]);
要作一次循环,把五个整数输出
for(int i=0;i<5;i++)
printf("%d",a[i]);
要作一次循环,把五个整数输出
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include<stdio.h>
void main()
{
int n,a[5],i=0;
scanf("%d",&n);
while(n)
{ a[i]=n%10;
n=n/10;
printf("%d",a[i]); //本行位置重新调整!
i++;
}
}
void main()
{
int n,a[5],i=0;
scanf("%d",&n);
while(n)
{ a[i]=n%10;
n=n/10;
printf("%d",a[i]); //本行位置重新调整!
i++;
}
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询