#include <stdio.h>
#define bit(n) (1<<(n))
void Binary(int bin)
{
int i;
for (i = 0; i < 8; i ++)
{
if (bin&bit(7-i))printf("1");
else printf("0");
}
printf("\n");
}
int main(void)
{
int a[8], b[8]={0};
int i, j;
for (j = 0; j < 8; j ++)
{
scanf("%d", &a[j]);
for (i = 0; i < 8; i ++)
{
b[i] |= ((a[j]&bit(i))>>i)<<(7-j);
}
}
for (j = 0; j < 8; j ++)
{
Binary(a[j]);
}
printf("\n");
for (j = 0; j < 8; j ++)
{
Binary(b[j]);
}
}
试了一下应该没有问题了,void Binary(int bin)为测试函数
#define bit(n) (1<<(n))
void Binary(int bin)
{
int i;
for (i = 0; i < 8; i ++)
{
if (bin&bit(7-i))printf("1");
else printf("0");
}
printf("\n");
}
int main(void)
{
int a[8], b[8]={0};
int i, j;
for (j = 0; j < 8; j ++)
{
scanf("%d", &a[j]);
for (i = 0; i < 8; i ++)
{
b[i] |= ((a[j]&bit(i))>>i)<<(7-j);
}
}
for (j = 0; j < 8; j ++)
{
Binary(a[j]);
}
printf("\n");
for (j = 0; j < 8; j ++)
{
Binary(b[j]);
}
}
试了一下应该没有问题了,void Binary(int bin)为测试函数