#include "stdio.h"
void fun (int n)
{
int i,k;
int x[10];
for(i=0; n!=0; i++) // 判断条件 n!=0
{
x[i]=n%2;
n=n/2;
}
for(k=i-1; k!=(-1); k--) // 判断条件 k!=-1
printf("%d",x[k]);// 输出x[k],不是x[i]
}
main()
{
int i,n,k;
scanf("%d",&n);
fun(n);
}
#include<stdio.h>
int fun(int a,char *p)
{
int k=0;
while(a!=0)
{
b=a/2;
k++;
p[k]=a-b*2;
a=a/2;
};
return 0;
}
int main()
{
int a,b,k,i;
int remainder[30];
while(1)
{
//定义了一个remainder数组,用来收集短除法除得的余数,栈倒序输出。
printf("请输入一个十进制数: ");
scanf("%d",&a);
fun(remainder);
printf("转换成二进制数是: ");
for (i=k; i>=1; i--)
{
printf("%d",remainder[i]);
}
printf("\n\n");
}
return 0;