2016年蓝桥杯省赛A组c++第5题(计算机组成原理)

时间:2022-03-08 12:22:49
/*
下面的代码把一个整数的二进制表示的最右边的连续的1全部变成0
如果最后一位是0,则原数字保持不变。
如果采用代码中的测试数据,应该输出: 00000000000000000000000001100111 -> 00000000000000000000000001100000
00000000000000000000000000001100 -> 00000000000000000000000000001100 请仔细阅读程序,填写划线部分缺少的代码。
*/ #include <stdio.h> void f(int x)
{
int i;
for(i=; i<; i++) printf("%d", (x>>(-i))&);
printf(" "); //x = _______________________;
x=x&(x+); for(i=; i<; i++) printf("%d", (x>>(-i))&);
printf("\n");
} int main()
{
f();
f();
return ;
}

tz@COI HZAU

2018/3/14