c语言编写一个能进行数制转换的小程序
时间: 2024-02-11 17:05:43 浏览: 169
好的,下面是一个简单的 C 语言程序,可以将十进制数转换为二进制、八进制和十六进制数:
```c
#include <stdio.h>
void decToBin(int n) {
int binary[1000], i = 0;
while (n > 0) {
binary[i] = n % 2;
n /= 2;
i++;
}
printf("二进制数为:");
for (int j = i - 1; j >= 0; j--)
printf("%d", binary[j]);
}
void decToOct(int n) {
int octal[1000], i = 0;
while (n > 0) {
octal[i] = n % 8;
n /= 8;
i++;
}
printf("八进制数为:");
for (int j = i - 1; j >= 0; j--)
printf("%d", octal[j]);
}
void decToHex(int n) {
char hex[1000];
int i = 0, rem;
while (n > 0) {
rem = n % 16;
if (rem < 10)
hex[i] = rem + 48;
else
hex[i] = rem + 55;
n /= 16;
i++;
}
printf("十六进制数为:");
for (int j = i - 1; j >= 0; j--)
printf("%c", hex[j]);
}
int main() {
int n;
printf("请输入一个十进制数:");
scanf("%d", &n);
decToBin(n);
printf("\n");
decToOct(n);
printf("\n");
decToHex(n);
printf("\n");
return 0;
}
```
在这个程序中,我们定义了三个函数:`decToBin`、`decToOct`和`decToHex`,分别用于将一个十进制数转换为二进制、八进制和十六进制数。在 `main` 函数中,我们首先从用户那里获取一个十进制数,然后调用这三个函数分别进行转换,并将结果打印到屏幕上。
阅读全文