C语言编程:从键盘上输入任意整数,逆序输出其各位数字,同时求出其位数及各位数字之和。

2025年03月13日 05:27
有3个网友回答
网友(1):

记录输入内容(scanf("%d",&n);)

n%10分解出最后一位数字记录(x = n%10)

n/10去掉最后一位(2个int型相除,结果没有小数位)

循环执行1、2步,加入输出(完成要求:逆序)、累和(完成要求:求和,实现:sum+=x)

直至分解出最后一位(n/10 = 0)。

扩展资料:

例如,(a+b)*(c+d)转换为*,+,a,b,+,c,d。它的优势在于只用两种简单的操作,入栈和出栈就可以解决任何中序表达式的运算。其运算方式为:如果当前字符(或字符串)为数字或变量,则压入栈内;如果是运算符,则将栈顶两个元素弹出栈外并作相应运算,再将结果压入栈内。当前序表达式扫描结束时,栈里的就是中序表达式运算的最终结果。

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

网友(2):

记录输入内容(scanf("%d",&n);)


  1. n%10分解出最后一位数字 记录(x = n%10)

  2. n/10去掉最后一位(2个int型相除,结果没有小数位)


循环执行1、2步,加入输出(完成要求:逆序)、累和(完成要求:求和,实现:sum+=x)

直至分解出最后一位(n/10 = 0)。

网友(3):

输入:1024
楼主希望输出什么?