Online Compiler C

#include<stdio.h> int main(){ int n,count,reserved; scanf("%d",&n); while(n>0){ count=n%10; reserved=count*10+count/10; n=n/10;} printf("%d",reserved); return 0; }
这段代码试图将一个整数反转,但逻辑有误。目前它只是不断取最后一位数字,然后错误地计算 `reserved`,最终只保留了最后一位数字的处理结果。

- 你需要在循环外初始化一个变量(比如 `reversed`)为0,然后在循环中每次取出当前最后一位数字,将其加到 `reversed` 的末尾(即 `reversed = reversed * 10 + 当前数字`),而不是用 `count*10+count/10` 这种错误公式。
- 注意变量 `count` 和 `reserved` 的命名和用途:`count` 只用来暂存当前位数字,`reserved` 应该逐步构建反转后的数。