# include<stdio.h>
int main(void)
{
int i;
//锁定的二进制位的数
int k;
//要输出的数
int n=0;
//统计执行次数
printf("需要锁定的二进制位中的位数是第几位?:");
scanf("%d",&i);
i=1<<(i-1);
//按照输入的位数用位运算符位移(第一位不需移动,所以i-1),所得值还赋给i
for(k=i;n<=20;k++,n++)
//从要锁定的数位为1,剩下为0的二进制开始输出,所以j值赋给k
{
k=k|i;
//将k在要锁定的i位的值是0时改为1
printf("%d\n",k);
}
return 0;
}
[
本帖最后由 zsongmi 于 2011-6-2 13:43 编辑 ]