十进制转化为二进制主要是对二取余在倒序输出
#include<stdio.h>
#include<string.h>
#define n 16
void main()
{
int k=0,a,i;
int s1[n],s2[n];//定义两个一维数值
printf("输入:");
scanf("%d",&a);
printf("\n");
for(k=0;a>0;k++)
{
s2[k]=a%2;
a=a/2; //当a=0时终止循环
}
for(i=k-1;i>=0;i--)
s1[i]=s2[i]; //倒序
printf("输出:");
for(i=0;i<k;i++)//小于k很重要
printf("%d",s1[i]);
printf("\n");
}
结果: