用C语言编写一个进制转换函数和调用进制函数
时间: 2023-05-21 16:02:47 浏览: 109
好的,以下是一个简单的进制转换函数的 C 代码:
```c
#include <stdio.h>
void convert(int num, int base) {
if (num == 0) {
return;
}
convert(num / base, base);
int digit = num % base;
if (digit < 10) {
printf("%d", digit);
} else {
printf("%c", 'A' + digit - 10);
}
}
int main() {
int num, base;
printf("请输入一个十进制数:");
scanf("%d", &num);
printf("请输入目标进制(2-16):");
scanf("%d", &base);
printf("转换结果为:");
convert(num, base);
printf("\n");
return 0;
}
```
你可以将这段代码保存为一个名为 `convert.c` 的文件,然后使用 C 编译器编译并运行它。比如,使用 GCC 编译器可以这样:
```
gcc -o convert convert.c
./convert
```
然后按照提示输入要转换的数和目标进制即可。
如果你想在自己的 C 代码中调用这个函数,可以这样做:
```c
#include <stdio.h>
void convert(int num, int base);
int main() {
int num = 123;
int base = 16;
printf("转换结果为:");
convert(num, base);
printf("\n");
return 0;
}
void convert(int num, int base) {
if (num == 0) {
return;
}
convert(num / base, base);
int digit = num % base;
if (digit < 10) {
printf("%d", digit);
} else {
printf("%c", 'A' + digit - 10);
}
}
```
这里我们将 `convert` 函数的定义放在了 `main` 函数的前面,这样就可以在 `main` 函数中调用它了。
阅读全文