【c语言笔记】C语言之十进制转为二进制
程序员文章站
2022-07-15 09:41:08
...
这次错误主要就是忘记了数组做参数
废话也不多说了,代码奉上
//十进制转为二进制
#include"stdio.h"
#define M 20
int transform(int ,int []);
void exchange(int [],int );
int main()
{
int dec,bin[M],i;
printf("please input a DEC num:");
scanf("%d",&dec);
printf("\n");
i=transform(dec,bin);
exchange(bin,i);
return 0;
}
int transform(int n,int m[])
{
int i=0;
while(n!=0)
{
m[i++]=n%2;
n=n/2;
}
return i;
}
void exchange(int m[],int n)
{
int i,temp;
for(i=0;i<n/2;i++)
{
temp=m[i];
m[i]=m[n-i-1];
m[n-i-1]=temp;
}
for(i=0;i<n;i++)
{
printf("%d",m[i]);
}
}