用c语言将十进制转化为二进制
时间: 2023-12-17 07:47:59 浏览: 70
可以使用以下代码将十进制转换为二进制:
```c
#include <stdio.h>
#include <stdlib.h>
int main()
{
int decimal, binary[32], i = 0;
printf("请输入一个十进制数:");
scanf("%d", &decimal);
if(decimal == 0)
{
printf("0的二进制数为0\n");
return 0;
}
while(decimal > 0)
{
binary[i] = decimal % 2;
decimal = decimal / 2;
i++;
}
printf("该数的二进制数为:");
for(i=i-1;i>=0;i--)
{
printf("%d", binary[i]);
}
printf("\n");
return 0;
}
```
其中,我们定义了一个 int 型变量 decimal 来存放输入的十进制数,一个 int 型数组 binary 来存储转换后的二进制数。使用 while 循环实现对 decimal 的二进制转换,每次对 decimal 取余数并存储在 binary 数组中,同时将 decimal 除以 2。最后,使用 for 循环倒序输出 binary 数组中的元素即可得到十进制数的二进制表示。
相关问题
c语言将十进制转化为二十六进制,并输出二十六进制
好的,我知道该怎么做。下面是将十进制转化为二十六进制的C语言代码:
```c
#include <stdio.h>
void decimalTo26(int n) {
char result[10];
int i = 0;
while (n > 0) {
int remainder = n % 26;
result[i++] = remainder + 'A';
n /= 26;
}
for (int j = i - 1; j >= 0; j--) {
printf("%c", result[j]);
}
printf("\n");
}
int main() {
int n = 1234;
decimalTo26(n);
return 0;
}
```
在这个代码中,我们定义了一个函数 `decimalTo26` 来将十进制数转化为二十六进制。我们使用字符数组 `result` 来存储每个二十六进制位上的字符。在转化过程中,我们不断地将余数加上字符 'A',然后将商作为下一个操作的数。最后,我们反向输出得到的结果。
在 `main` 函数中,我们定义一个整数 `n` 并将其初始化为 1234。然后,我们调用 `decimalTo26` 函数来将 `n` 转化为二十六进制并打印输出。
C语言1068二进制转化为十进制
以下是C语言将二进制数1068转换为十进制的代码示例:
```c
#include <stdio.h>
#include <math.h>
int main()
{
int binary = 1068;
int decimal = 0;
int i = 0;
while (binary != 0)
{
int remainder = binary % 10;
binary /= 10;
decimal += remainder * pow(2, i);
++i;
}
printf("The decimal value of 1068 is: %d", decimal);
return 0;
}
```
运行结果为:
```
The decimal value of 1068 is: 84
```
阅读全文