C语言问题求解答

来源:百度知道 编辑:UC知道 时间:2024/05/22 12:08:08
题目是让输入一个四位数字,并把这个四位数字反向输出 如 1234——4321

我的程序有一个错误,望高手指点
# include<stdio.h>
void main()
{int a,b,c,d,e;
printf("输入一个四位数:");
scanf(" %d",&a);

printf(" b=%d",a/1000);
printf(" c=%d", ((a-b*1000)/100));
printf(" d=%d",((a-b*1000-c*100)/10));
printf(" e=%d", a-b*1000-c*100-10d);
printf("%d",1000e+100d+10c+b);
}

" b=%d",这只是打印出b=**,不会赋值给b,所以需要自己用表达式定义一下
b=a/1000;
修改如下
# include<stdio.h>
void main()
{int a,b,c,d,e;
printf("输入一个四位数:");
scanf(" %d",&a);
b=a/1000;
c=(a-b*1000)/100;
d=(a-b*1000-c*100)/10;
e=a-b*1000-c*100-10*d;
printf(" b=%d",b);
printf(" c=%d", c);
printf(" d=%d",d);
printf(" e=%d", e);
printf("%d",1000*e+100*d+10*c+b);
}

printf("%d",1000e+100d+10c+b);
这个地方有问题哦,没有乘号。

#include <stdio.h>

main()
{
int n;
char c;
c=' ';
scanf("%d",&n);
printf("%d\n",n);
if(n<0)
{
n*=-1;
c='-';
printf("%c",c);
}
while(n!=0)
{
printf("%d",n%10);
n = n / 10;
}
printf("\n");
}

奇怪,今天有好多人在问这个问题~