将十进制数M转化为N进制数 用C++实现
时间: 2023-05-24 14:07:33 浏览: 98
以下是一个将十进制数M转化为N进制数的C代码实现:
```c
#include <stdio.h>
void decimalToBase(int M, int N) {
int remainder;
int quotient = M;
char result[100]; //存放转换后的结果
int i = 0;
while (quotient != 0) {
remainder = quotient % N; //求余数
quotient = quotient / N; //求商
if (remainder < 10) {
result[i] = remainder + '0'; //余数为0-9时 ascii码值+48得到相应字符
} else {
result[i] = remainder - 10 + 'A'; //余数为10以上是 A-Z的字符
}
i++;
}
printf("M在%d进制下的值为: ", N);
for (int j = i-1; j >= 0; j--) { //逆序输出result数组中的每个元素,组成转换后的数
printf("%c", result[j]);
}
printf("\n");
}
int main() {
int M = 100; //要转换的十进制数
int N = 2; //目标进制
decimalToBase(M, N);
return 0;
}
```
输出:
```
M在2进制下的值为: 1100100
```
阅读全文