c语言的一道题目:输入任意一个3位数,将其各位数字反序输出。

输入任意一个3位数,将其各位数字反序输出。
2024-11-29 12:50:14
推荐回答(5个)
回答1:

main()
 {
     int a;
     printf("please input number:");
     scanf("%d",&a);
     while(a)// a的位数可以不仅限于3位数
     {
         printf("%d",a%10);//输出此时a的 个位数
         a=a/10;//去掉a的个位
      }
 }

希望对你有所帮助!

回答2:

解题思路很多,给你一个压栈的解决方法:(压栈并不一定要用栈结构,递归本身就带有栈操作)

void output(int x) {
if(x < 0)
return;
output(x==0?-1:x/10);
printf("%d", x%10);
}

output(任意整数) 任意整数都会反序输出.不限于3位。

回答3:

#include
void main()
{
int n;
printf("输入一个3位数:\n");
scanf("%d",&n);
printf("%d",n%10);//输出个位数字
printf("%d",n/10%10);//输出十位数字
printf("%d\n",n/100);//输出百位数字
}

回答4:

int num = 123;
printf("%d%d%d\n",num%10,(num/10)%10,num/100);

回答5:

#include

int main()
{
int x = 0, y = 0, i;
scanf("%d", &x);

for (i = 0; i < 3; i++)
{
y = y * 10 + (x % 10);
x = x / 10;
}

printf("%d\n", y);

return 0;
}