从键盘读入两个整数,对它们进行按位异或操作,把操作结果按二进制位放在字符数组str中,最后输出该字符串。提示:第2个空建议使用条件表达式(?表达式)实现!
程序的运行效果应类似地如图1和图2所示,图1中的127 0和图2中的123 456是从键盘输入的内容。
Please input num1 and num2 : 127 0
127 ^ 0 = 00000000000000000000000001111111
Please input num1 and num2 : 123 456
123 ^ 456 = 00000000000000000000000110110011
需要填空的题目如下, 在Found下添加:
#include
int main(void)
{
unsigned long int number, num1, num2, mask;
int i;
char str[33];
printf("Please input num1 and num2 : ");
scanf("%lu %lu", &num1, &num2);
/*********Found************/
mask = __________________;
number = num1 ^ num2;
for(i=0; i<32; i++)
{
/*********Found************/
str[i] = __________________;
mask >>= 1;
}
str[32] = '\0';
printf("%lu ^ %lu = %s\n", num1, num2, str);
return 0;
}