c/c++ 数制转换。编写程序将一个十进制整数n转换成r(取值2~16)进制形式
时间: 2024-05-12 13:17:11 浏览: 142
c++编写的数制转换
3星 · 编辑精心推荐
好的,我理解了你的要求。以下是将一个十进制整数n转换成r进制形式的C语言代码:
```c
#include <stdio.h>
void decimalToBase(int n, int r) {
if (n == 0) {
return;
}
decimalToBase(n / r, r);
int digit = n % r;
if (digit < 10) {
printf("%d", digit);
} else {
printf("%c", digit - 10 + 'A');
}
}
int main() {
int n, r;
printf("请输入一个十进制整数n:");
scanf("%d", &n);
printf("请输入要转换的进制r(2~16):");
scanf("%d", &r);
if (r < 2 || r > 16) {
printf("错误:进制超出范围\n");
return 0;
}
printf("转换结果为:");
if (n < 0) {
printf("-");
n = -n;
}
decimalToBase(n, r);
printf("\n");
return 0;
}
```
运行结果如下:
```
请输入一个十进制整数n:12345
请输入要转换的进制r(2~16):16
转换结果为:3039
```
该程序实现了将一个十进制整数n转换成r进制形式的功能。
阅读全文