题目:
写一个函数,输入一个10进制数,输出它的2进制,例如:输入9,输出1001
思路:
十进制数转换为其他进制时,转换成几进制就除以几进制求余。
代码:
#include "stdio.h"
#define N 100
int main()
{
int n, a[N];
int i = 0;
printf("请输入十进制数n:");
scanf_s("%d", &n);
while (n>0)
{
a[i] = n % 2;
i = i + 1;
n = n / 2;
}
for (i--; i >= 0; i--)
printf("%d", a[i]);
printf("\n");
return 0;
}
运行结果:
注意:该程序只能实现十进制数为正时的转换,负数的转换还需要考虑补码与反码。