十进制转化为二进制:将十进制一直除以二,然后用数组储存余数,并取商,如此循环直到十进制数小于零。
#include <stdio.h>
void main()
{
short int n;
int a[30],i=0; //定义一个数组 用来存储二进制数
for(i=0;i<30;i++){ //将这个数组初始化为0;
a[i]=0;
}
i=0;
printf("输入一个十进制数:");
do{
scanf("%hd",&n);
} while(n<0);
while(n>0){ //将余数存在数组里面
a[i]=n%2;
n=n/2;
i++;
}
for(i=29;i>=0;i--){ //倒序输出二进制数
printf("%d",a[i]);
}
}