C语言初级问题。请各位DX指点。

来源:百度知道 编辑:UC知道 时间:2024/05/27 11:41:00
输入int的整形数,例如:
#include<stdio.h>
main()
{
int x;
scanf("%d",&x);
例如输入12345用循环做,要求倒过来输出54321。
}
不能用复杂的做法,只能用for或do....while或if循环。
请DX给出完美的答案。小弟谢谢各位了。

#include <stdio.h>
main()
{
int n,i,j=0;
scanf("%d",&n);
while(n)
{
i=n%10;
j=j*10+i;
n=n/10;
}
printf("the new number is %d!",j);
}
_______________________________________________________
上面的程序一定满足楼主的要求 ~

思路是这样的,先把各位数按位存到一个数组中,如12345,存放为temp[0]=5,temp[1]=4,temp[2]=3,temp[3]=2,temp[4]=1,之后把这个数组合成一个整数;
#include<stdio.h>
void main()
{
long a,b;
int i,n,m,temp[20];
scanf("%ld",&a);
printf("before a=%ld\n",a);
i=0;
whlie(a!=0)
{temp[i]=a%10;
a=a/10;
i++;
}//*以上whlie循环用来实现把各位数放到一个数组中*//
n=i-1;//*n为数组中最后一位的位置*//
m=1;
b=0;
for(i=n;i>=0;i--)
{b=b+temp[i]*m;
m=m*10;
}//*以上for循环用于把数组里面的数按位相加得到最后要输出的数*//
printf("after b=%ld",b);
}

#include <stdio.h>
#define N 5//控制输入数的个数
main()
{
int a[N];
i