gpt4 book ai didi

c - C语言十进制转二进制

转载 作者:行者123 更新时间:2023-12-01 19:33:12 26 4
gpt4 key购买 nike

我的简单程序无法将 7 转换为 111(当前代码给出 101)。我知道 myArray[] 和最后一个 printf() 可以改进,但我们可以下次再谈。

int main() {
int myDecimal, quo, rem;
int i = 0; //counter
int myArray[3];
printf("Enter valid decimal number: ");
scanf("%d", &myDecimal);

while(quo != 1){
quo = myDecimal / 2;
rem = myDecimal % 2;

myArray[i] = rem;
myDecimal = quo;
i++;
} myArray[i] = quo;

printf("\nBinary: %d %d %d", myArray[i + 2], myArray[i + 1], myArray[i] );
return 0;
}

最佳答案

它对我来说很好用。您是否正确包含头文件?您使用哪个编译器?

#include <stdio.h>
#include <conio.h>

int main() {
int myDecimal, quo, rem;
int i = 0; //counter
int myArray[3];
printf("Enter valid decimal number: ");
scanf("%d", &myDecimal);

while(quo != 1){
quo = myDecimal / 2;
rem = myDecimal % 2;

myArray[i] = rem;
myDecimal = quo;
i++;
} myArray[i] = quo;

printf("\nBinary: %d %d %d", myArray[i + 2], myArray[i + 1], myArray[i] );
return 0;
}

输出

enter image description here

我也试试这个。如果你愿意,你也可以试试这个:)

#include <stdio.h>
#include <conio.h>

int main() {
long myDecimal;
long binary = 0, i = 1;
int rem;
printf("Enter valid decimal number: ");
scanf("%d", &myDecimal);

while(myDecimal != 0) {
rem = myDecimal%2;
myDecimal = myDecimal/2;
binary= binary + (rem*i);
i = i*10;
}
printf("Binary number is %ld",binary);
}

关于c - C语言十进制转二进制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43423584/

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