c语言,写一个函数,把十进制变成n进制数,1<n<=16,由键盘输入,把余数倒过来输出。
时间: 2024-03-25 11:40:32 浏览: 37
好的,以下是实现该功能的C语言函数代码:
```c
#include<stdio.h>
void convert(int num, int base) {
int i = 0, j, rem;
char res[100];
while (num > 0) {
rem = num % base;
if (rem < 10) {
res[i++] = rem + '0';
} else {
res[i++] = rem - 10 + 'A';
}
num /= base;
}
for (j = i - 1; j >= 0; j--) {
printf("%c", res[j]);
}
printf("\n");
}
int main() {
int num, base;
printf("请输入十进制数:");
scanf("%d", &num);
printf("请输入要转换的进制数(1<n<=16):");
scanf("%d", &base);
printf("%d转换为%d进制数的结果为:", num, base);
convert(num, base);
return 0;
}
```
使用该函数时,先输入要转换的十进制数,再输入要转换的进制数,函数将会把转换后的结果倒序输出。
相关问题
用C语言写一个程序将十进制整数25转换为任意n进制整数(n<=16)并输出。(用递归函数实现)
以下是用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进制,并输出结果。
用c语言写一个函数,输入十进制数,输出相应的二进制数,并测试所设计的函数
,你能帮我完成吗?
当然可以帮您完成,以下是用C语言编写的十进制转二进制函数:
```
#include <stdio.h>
//该函数可以将十进制数转换为二进制数并输出
void decimalToBinary(int decimalNum){
int binaryNum[32];//定义一个数组来存储二进制数
int i = 0;
//当十进制数大于0时,一直循环
while(decimalNum > 0){
binaryNum[i] = decimalNum % 2;//取余数
decimalNum = decimalNum / 2;//除以2继续循环
i++;//数组下标每次+1
}
//倒序输出数组元素,形成二进制数
for(int j=i-1; j>=0; j--){
printf("%d", binaryNum[j]);
}
printf("\n");//换行
}
//测试函数
int main(){
int decimalNum;
printf("请输入一个十进制数:");
scanf("%d", &decimalNum);//输入一个十进制数
printf("转换后的二进制数为:");
decimalToBinary(decimalNum);//调用函数,将十进制数转换为二进制数并输出
return 0;
}
```
您可以将上述代码保存为.c文件并编译运行,输入一个十进制数后就会得到该数的二进制数。如果需要测试其他数字,请反复执行测试函数即可。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)