编程从键盘输入一个三位数,将它们逆序输出。如输入123,输出321.谢谢

如题所述

void main(){int x,a,b,c;

cin>>x;a=x/100;

b=x/10%10;c=x%10;

cout<<c*100+b*10+a<<endl;

例如:

#include<stdio.h>

int main()

{

int a,b,c,t;

scanf("%d",&a);

b=a%10;

c=(a-b)%100;

t=a/100;

printf("b=%dc=%dt=%d",b,c,t);

return 0;

}

扩展资料:

前序表达式是一种十分有用的表达式,它将中序表达式转换为可以依靠简单的操作就能得到运算结果的表达式。例如,(a+b)*(c+d)转换为*,+,a,b,+,c,d。它的优势在于只用两种简单的操作,入栈和出栈就可以解决任何中序表达式的运算。其运算方式为:

如果当前字符(或字符串)为数字或变量,则压入栈内;如果是运算符,则将栈顶两个元素弹出栈外并作相应运算,再将结果压入栈内。当前序表达式扫描结束时,栈里的就是中序表达式运算的最终结果。

参考资料来源:百度百科-前序表达式

温馨提示:内容为网友见解,仅供参考
第1个回答  2010-04-20
这个简单啊!下边的是我以前写的,你看看吧?希望对你有帮助!不完善的地方在于没有判断第一位是不是0的,你可以加上去
#include<stdio.h>
void main()
{ long int a;
int b,c,d,e,f;
printf("请输入一个不多于五位的数值:");
scanf("%ld",&a);
if(a/10000!=0)
{
b=a/10000;
c=(a%10000)/1000;
d=(a%1000)/100;
e=(a%100)/10;
f=a%10;
printf("这是一个五位数。\n");
printf("万位的数字是%d\n",b);
printf("千位的数字是%d\n",c);
printf("百位的数字是%d\n",d);
printf("十位的数字是%d\n",e);
printf("个位的数字是%d\n",f);
printf("逆序输出各位数字是%d %d %d %d %d \n",f,e,d,c,b);
}
else if(a/1000!=0)
{
c=a/1000;
d=(a%1000)/100;
e=(a%100)/10;
f=a%10;
printf("这是一个四位数。\n");
printf("千位的数字是%d\n",c);
printf("百位的数字是%d\n",d);
printf("十位的数字是%d\n",e);
printf("个位的数字是%d\n",f);
printf("逆序输出各位数字是%d %d %d %d \n",f,e,d,c);
}
else if(a/100!=0)
{
d=a/100;
e=(a%100)/10;
f=a%10;
printf("这是一个三位数。\n");
printf("百位的数字是%d\n",d);
printf("十位的数字是%d\n",e);
printf("个位的数字是%d\n",f);
printf("逆序输出各位数字是%d %d %d \n",f,e,d);
}
else if(a/10!=0)
{
e=a/10;
f=a%10;
printf("这是一个二位数。\n");
printf("十位的数字是%d\n",e);
printf("个位的数字是%d\n",f);
printf("逆序输出各位数字是%d %d \n",f,e);
}
else if (a%10!=0)
{ printf("这是一个一位数。\n");}
}
第2个回答  2020-09-14
void main(){int x,a,b,c;cin>>x;a=x/100;b=x/10%10;c=x%10;cout<<c*100+b*10+a<<endl;
第3个回答  2013-06-05
# include<stdio.h>
# include<conio.h>
void main()
{
char a,b,c;
a=getch();b=getch();
c=getch();
putchar(c);putchar(b);
putchar(a);putchar('\n');
}
第4个回答  2020-11-07

编程从键盘输入一个三位数,将它们逆序输出。如输入123,输出321.谢谢...
void main(){int x,a,b,c;cin>>x;a=x\/100;b=x\/10%10;c=x%10;cout<<c*100+b*10+a<<endl;例如:include<stdio.h> int main(){ int a,b,c,t;scanf("%d",&a);b=a%10;c=(a-b)%100;t=a\/100;printf("b=%dc=%dt=%d",b,c,t);return 0;} ...

编写程序,从键盘输入一个三位数,求出其逆序数并输出,例如输入123,输出32...
package com.yuxin.learn;public class Main{ \/\/输入整数后,逆序输出为字符串,通过递归实现 public static String reverse(int a){ if(a<0)return"";if(a<10)return Integer.toString(a);int last=a-(a\/10)*10;\/\/取得这个整数的最后一位 return Integer.toString(last)+reverse(a\/10);\/\/...

编写程序:从键盘输入一个三位数的整数,要求将该数的反向序列输出。如输...
char str[80],*p=str;printf("请输入");scanf("%s",p);printf("你输入的字符串是:\\n");printf("%s\\n",p);invert(p);p=str;printf("逆序字符串\\n");printf("%s\\n",p);}

...其各位数字按逆序输出(例如:输入数据123,输出321 求解
可以通过取余运算符(%)和除号(\/)来完成,具体的思路如下:比如要对123逆序输出。第一步是先对 123除以10取余数,这样就会得到3;第二步是把123除以10取整,得到12,然后再把3*10+12%10,得到32;第三步是把12除以10取整,得到1,然后再把32*10+1%10,得到321,然后一直重复,直到原来的那个数...

C语言:任意输入一个三位整数,然后逆序输出。如123变为321。
include <stdio.h> int main(void){ int a,b,c,d,e;printf("请输入一个三位数:");scanf("%d",&a);b = a\/100;c = (a-b*100)\/10;d = a-b*100-c*10;e = d*100+c*10+b;printf("逆序输出:%d", e);return 0;} ...

3. 编一程序,从键盘输入一个三位数,求出其逆序数并输出,例如输入123...
include<stdio.h> void main(){ char num[100],i;int k=0; \/\/计算数组位数 printf("请输入数组\\n");for(i=0;i<100;i++){ scanf("%c",&num[i]);k++;if(num[i]=='\\n'){ break; \/\/ 当输入回车时退出循环 } } for(i=k-2;i>=0;i--){ printf("%c ",num[i]);} ...

...将其各位数字反序输出(例如输入123,输出321).
代码如下:include <stdio.h> void main( ){int a,b,c,d;scanf("%d",&a);b= a\/100;c= (a%100) \/10;d=a%10;printf("%d",100*d+10*c+b);}

编程将一个3位数,逆序输出(如输入321,逆序输出123)
c语言程序如下:include main(){ int i;long s,t=0;printf("请输入长整数:");scanf("d",&s);while(s>0){ t=t*10+s%10;s=s\/10;} printf("该长整数逆序的得到的数为",t);}

求助:编写C语言,输入一个三位数(如123),然后输出结果是321.谢谢啦
测试通过,几位都可以,只要在int允许范围内 int reverse(int n){ int m=0;int k=0;while (n>0){ k=n%10;m = m*10+k;n = n\/10;} return m;} void main(){ int n;scanf("%d",&n);printf("%d\\n",reverse(n));} ...

输出一个3位整数的逆序数。比如输入123,输出321。
b=(x-a*100)\/10; \/* 计算x的十位数 *\/ c=x%10; \/* 计算x的个位数 *\/ y=c*100+b*10+a; \/* 计算逆序数 *\/ printf("%d\\n",y); \/* 输出逆序数y *\/ getch();return 0;} 我的大学作业,,, 不要担心a,b,c不为整数,因为我定义它们为整形的。。

相似回答