用C语言写一个程序将十进制整数25转换为任意n进制整数(n<=16)并输出。(用递归函数实现)
时间: 2024-06-13 18:05:31 浏览: 129
以下是用C语言编写的将十进制整数25转换为任意n进制整数的递归函数实现的程序:
```c
#include <stdio.h>
void convert(int num, int base) {
if (num == 0) {
return;
}
int remainder = num % base;
convert(num / base, base);
if (remainder < 10) {
printf("%d", remainder);
} else {
printf("%c", remainder - 10 + 'A');
}
}
int main() {
int num = 25;
int base = 8;
printf("%d in base %d is: ", num, base);
convert(num, base);
printf("\n");
return 0;
}
```
在上面的程序中,convert函数使用递归的方式将十进制整数num转换为任意n进制整数。如果num等于0,则递归结束。否则,先递归调用convert函数将num除以base的商作为参数传递给convert函数,然后输出num除以base的余数。如果余数小于10,则直接输出余数;否则,输出余数减去10再加上字符'A'的ASCII码值。
在main函数中,我们定义了一个整数num和一个整数base,分别表示要转换的十进制整数和目标进制。然后,我们调用convert函数将num转换为base进制,并输出结果。
阅读全文