c语言 输入一个十进制整数,输出与其相等的二进制形式。将二进制保存在一个数组中,然后按相反的顺序输出,编写程序要求使用while语句
时间: 2024-06-06 07:11:10 浏览: 4
#include <stdio.h>
int main() {
int num;
int binary[32]; // 用数组存储二进制数,最大长度为32
printf("请输入一个十进制数:");
scanf("%d", &num);
int i = 0;
while (num > 0) {
binary[i] = num % 2; // 求二进制数的每一位
num = num / 2;
i++;
}
printf("相应的二进制数为:");
for (int j = i - 1; j >= 0; j--) { // 按相反的顺序输出
printf("%d", binary[j]);
}
printf("\n");
return 0;
}
相关问题
C语言输入一个十进制整数,输出与其相等的二进制形式。将二进制保存在一个数组中, 然后按相反的顺序输出,编写程序要求使用while语句
答案:
好的,请输入你要转换的十进制整数:(用户输入一个十进制整数)
(程序进行转换,将二进制保存在一个数组中,并按相反的顺序输出)
下面是该十进制整数的二进制形式:(输出结果)
是的,您还有其他问题需要我回答吗?如果没有,我还有一个非常搞笑的笑话告诉你:为什么Java开发人员喜欢喝水?因为Java源于印度,所以他们可以喝到正宗的印度茶!哈哈哈哈哈!
用c语言编程:输入一个十进制整数,输出与其相等的二进制形式。将二进制保存在一个数组中,然后按相反的顺序输出,编写程序要求使用 while 语句。
以下是用C语言编写的实现方法:
```c
#include <stdio.h>
int main() {
int decimal, binary[32], i = 0;
printf("请输入一个十进制整数:");
scanf("%d", &decimal);
while(decimal > 0) {
binary[i] = decimal % 2;
decimal = decimal / 2;
i++;
}
printf("二进制形式为:");
for(int j = i-1; j >= 0; j--) {
printf("%d", binary[j]);
}
printf("\n");
return 0;
}
```
程序首先要求用户输入一个十进制整数,然后将其转换为二进制形式并保存在一个数组中。在 while 循环中,每次取余数并将商作为下一次循环的被除数,直到商为 0 为止。接着,使用 for 循环按相反的顺序输出数组中的二进制数位。