从键盘输入一个十进制数值 ,请转换为对应进制的数值。(转换过程请使用函数)C语言
时间: 2024-05-07 13:20:26 浏览: 144
以下是将十进制数转换为任意进制数的函数实现,其中以转换为二进制数为例:
```c
#include <stdio.h>
void decToAnyBase(int num, int base){
int rem;
int arr[100];
int i = 0;
while(num > 0){
rem = num % base;
arr[i] = rem;
i++;
num = num / base;
}
for(int j = i - 1; j >= 0; j--){
printf("%d", arr[j]);
}
}
int main(){
int num, base;
printf("Enter a decimal number: ");
scanf("%d", &num);
printf("Enter the base to convert to: ");
scanf("%d", &base);
printf("The number in base %d is: ", base);
decToAnyBase(num, base);
return 0;
}
```
在上面的代码中,我们定义了一个 `decToAnyBase()` 函数,该函数接收两个参数:要转换的十进制数和目标进制数。该函数使用循环迭代,从最低位开始将输入的十进制数转换为目标进制数。在转换完毕后,该函数打印输出转换后的结果。
在 `main()` 函数中,我们首先使用 `scanf()` 函数从键盘读取一个十进制数,然后再读取要转换为的目标进制数。最后,我们调用 `decToAnyBase()` 函数将输入的十进制数转换为目标进制数,并将结果打印输出。
阅读全文