c语言作业:用递归法编写程序,输入一个整数,将它逆序输出。要求定义并调用函数 reverse ( number ), 的功能是返回 number 的逆序数。例如 reverse (12345)的返回值是54321。
时间: 2024-02-15 10:03:20 浏览: 84
用递归算法实现整数逆序
4星 · 用户满意度95%
好的,我可以帮您解决这个问题。下面是 C 语言的代码实现:
```c
#include <stdio.h>
int reverse(int n) {
if (n == 0) {
return 0;
} else {
return (n % 10) * pow(10, floor(log10(n))) + reverse(n / 10);
}
}
int main() {
int num;
printf("请输入一个整数:");
scanf("%d", &num);
printf("逆序输出为:%d\n", reverse(num));
return 0;
}
```
在这个程序中,我们定义了一个 reverse 函数,用于递归地计算输入数字的逆序数。在函数中,我们首先判断输入数字是否为 0,如果是,则递归结束,返回 0;否则,我们获取输入数字的最后一位,然后乘以 10 的位数次方,加上递归后得到的结果。
在主函数中,我们首先读取用户输入的数字,然后调用 reverse 函数将其逆序输出。
希望对您有所帮助!
阅读全文