#include <stdio.h>
#include <stdlib.h>
int main()
{
long long int a,b,c;
scanf("%lld",&a);
do
{
b=a/2;
c=a%2;
a=b;
printf("%lld",c);
if(a/2==0)
{
c=a%2;
printf("%lld\n",c);
}
}
while(a/2!=0);
do
{
b=a/8;
c=a%8;
a=b;
printf("%lld",c);
if(a/8==0)
{
c=a%8;
printf("%lld\n",c);
}
}
while(a/8!=0);
return 0;
}
改不了,得倒序输出
#include<stdio.h>
int main() {
int i = 0, n,m, a[32],b[32];
scanf("%d", &n);
m=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");
i=0;
while (m > 0) {
b[i] = m % 8;
i = i + 1;
m = m / 8;
}
for (i--; i >= 0; i--)
printf("%d", b[i]);
printf("\n");
return 0;
}