gpt4 book ai didi

使用字符串将十进制数字转换为二进制代码

转载 作者:行者123 更新时间:2023-11-30 19:32:00 27 4
gpt4 key购买 nike

我正在开发一个程序。您可以输入一个普通数字,程序应首先将其转换为二进制代码,然后将其复制为字符串。如果我启动程序并输入数字,则不会发生任何事情。

 #include <stdio.h>
#include <stdlib.h>

int main()
{ int i;
unsigned short input;
char output [18] = "";

printf("enter a positive number\n");

scanf("%hu", &input);

for (i= 16; 1; i-- )
{
output [i] = input % 2;

input = input / 2;

}

puts(output);


return 0;
}

最佳答案

output 应以 NUL 结尾,因此您需要 16 个字节用于 short int 加上 1 个字节用于空字符

char output [17];

0的ASCII值与结果相加,得到01

for(i = 16; i >= 0; i--)
{
output[i] = '0' + input % 2;
input = input / 2;
}

最后添加空字符:

output[16] = 0;

或者您可以使用移位运算符

unsigned int bitmask = 1 << (15 - i);
output[i] = '0' + ((input & bitmask) ? 1 : 0);

关于使用字符串将十进制数字转换为二进制代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47583607/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com