我有写一个程序 是错的 麻烦帮我看下是哪里错了??
#include"stdio.h"
int change(int b[10]);
void main()
{ int a[10],i,k;
printf("enter a number=");
for(i=0;i<10;i++)
scanf("%d",&a[i]);
change(a[i]);
}
int change(int b[10])
{ int j,t;
for(j=0;j<5;j++)
{t=b[j];
b[j]=b[10-j-1];
b[10-j-1]=t;}
printf("%d",b[j]);
}
编写一个将1个整数首位倒置的函数。例如,若程序输入12345,输出54321,输入-34567,输出-76543.
答案:2 悬赏:0
解决时间 2021-11-15 10:49
- 提问者网友:对着我说爱我
- 2021-11-14 12:39
最佳答案
- 二级知识专家网友:统治我的世界
- 2021-11-14 13:46
要输入一个数 你直接输入了10个数。。。
思路整体就错了。。。
比较标准的写法是
#include"stdio.h"
int change(int b);
void main()
{ int a,i,k;
printf("enter a number=");
scanf("%d",&a);
change(a);
}
int change(int b)
{
int r,t;
r = 0;
t = b;
while(t)
{
r*=10;
r+=t%10;
t/=10;
}
if(b<0) r*=-1;
printf("%d\n", r);
return r;
}
思路整体就错了。。。
比较标准的写法是
#include"stdio.h"
int change(int b);
void main()
{ int a,i,k;
printf("enter a number=");
scanf("%d",&a);
change(a);
}
int change(int b)
{
int r,t;
r = 0;
t = b;
while(t)
{
r*=10;
r+=t%10;
t/=10;
}
if(b<0) r*=-1;
printf("%d\n", r);
return r;
}
全部回答
- 1楼网友:开心就好
- 2021-11-14 15:12
你想表达的是倒序输出还是在数组里倒序排列?我试用了你的代码。一推bug. 细看了一下,你这个change方法参数最好使用指针。
再看看别人怎么说的。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯