C语言实现十进制转二进制
时间: 2023-04-04 10:03:37 浏览: 133
可以使用位运算符来实现十进制转二进制,具体步骤如下:
- 定义一个整型变量num,表示要转换的十进制数。
- 定义一个字符数组binary,用于存储转换后的二进制数。
- 使用while循环,当num不为0时,执行以下步骤: a. 将num与1进行按位与运算,得到最低位的值。 b. 将得到的值转换为字符类型,存储到binary数组中。 c. 将num右移一位,相当于将最低位舍去。
- 将binary数组反转,得到正确的二进制数。
- 输出二进制数。
下面是示例代码:
#include <stdio.h> #include <string.h>
int main() { int num; char binary[32]; int i = 0;
printf("请输入一个十进制数:");
scanf("%d", &num);
while (num != 0)
{
binary[i++] = num & 1 ? '1' : '0';
num >>= 1;
}
binary[i] = '\0';
strrev(binary);
printf("转换后的二进制数为:%s\n", binary);
return 0;
}
相关问题
c语言实现十进制转二进制
C语言实现十进制转二进制的代码如下:
#include <stdio.h>
void decToBinary(int n)
{
int binaryNum[32];
int i = 0;
while (n > 0) {
binaryNum[i] = n % 2;
n = n / 2;
i++;
}
for (int j = i - 1; j >= 0; j--)
printf("%d", binaryNum[j]);
}
int main()
{
int n = 17;
decToBinary(n);
return 0;
}
输出结果为:10001
用C语言实现十进制转二进制
可以使用以下代码来实现十进制转二进制的功能:
#include <stdio.h>
void decimalToBinary(int n) {
int binary[32];
int i = 0;
// 将十进制数转换为二进制数
while (n > 0) {
binary[i] = n % 2;
n = n / 2;
i++;
}
// 输出二进制数
for (int j = i - 1; j >= 0; j--) {
printf("%d", binary[j]);
}
}
int main() {
int decimal;
printf("请输入一个十进制数:");
scanf("%d", &decimal);
printf("该数的二进制表示为:");
decimalToBinary(decimal);
printf("\n");
return 0;
}
运行程序后,输入一个十进制数,程序会将其转换为二进制数并输出。
相关推荐















