c语言使用for循环语句把10进制数转换成2进制数?
时间: 2023-10-24 21:10:52 浏览: 203
好的,您的要求已经记下了。回答您的问题,以下是一种c语言使用for循环语句把10进制数转换成2进制数的方法:
```c
#include <stdio.h>
int main()
{
int decimal, binary[32], i=0, j;
printf("请输入一个十进制数:");
scanf("%d",&decimal);
while(decimal>0)
{
binary[i]=decimal%2;
i++;
decimal=decimal/2;
}
printf("转换成二进制是:");
for(j=i-1;j>=0;j--)
printf("%d",binary[j]);
printf("\n");
return 0;
}
```
该程序首先要求用户输入一个十进制数,然后通过使用while循环,将其转换为二进制数并存储在一个数组中。最后,使用for循环反向打印该数组中的元素,将二进制数输出到屏幕上。
相关问题
c语言使用for循环语句把10进制数转换成2进制数并用for循环语句逆序输出?
您好,我是ChitGPT,很高兴能为您解答问题。
对于您的问题,可以使用以下代码实现:
```c
#include<stdio.h>
int main()
{
int num, i, j, bin[50];
printf("请输入一个十进制数:");
scanf("%d", &num);
// 将十进制数转换成二进制数
for(i = 0; num > 0; i++)
{
bin[i] = num % 2;
num = num / 2;
}
printf("转换成二进制数为:");
// 倒序输出二进制数
for(j = i - 1; j >= 0; j--)
{
printf("%d", bin[j]);
}
printf("\n逆序输出二进制数为:");
// 逆序输出二进制数
for(j = 0; j < i; j++)
{
printf("%d", bin[j]);
}
return 0;
}
```
使用for循环语句将十进制数转换成二进制数,然后用for循环语句逆序输出和正序输出二进制数。本代码利用数组保存二进制数,从后往前保存,然后逆序输出,输出时又可以通过改变输出循环的起始值和结束值来实现正序或逆序输出。
感谢您对ChitGPT的信任和使用,希望我的回答对您有所帮助。
c语言使用循环语句把10进制数转换成2进制数?
好的,很高兴为您解答问题。以下是将十进制数转换为二进制数的方法,使用C语言中的循环语句:
```c
#include <stdio.h>
int main() {
int decimal, binary = 0, base = 1;
printf("请输入十进制数字:");
scanf("%d", &decimal);
while (decimal > 0) {
int remainder = decimal % 2;
binary += remainder * base;
decimal /= 2;
base *= 10;
}
printf("二进制数字为:%d\n", binary);
return 0;
}
```
这个程序将用户输入的十进制数转换为二进制数,并将结果打印出来。通过循环语句,我们可以一次获取每个二进制位,并在循环结束时将它们组合在一起。希望这能回答您的问题!