判断二进制数某位是0还是1,以及修改二进制数某位

#include <stdio.h>

int main()
{
    int n = 9;
    //判断n二进制数从右向左数第4位是0还是1,若为1,1&1得1,若为0,0&1得0;
    if((n>>(3))&1) printf("1\n");
    else printf("0\n");
    //修改n二进制数从右向左数第3位为1
    int res = n|(1<<2);
    printf("%d\n",res);
	//修改n二进制数从右向左数第4位为0
    int r2 = n&~(1<<3);
    printf("%d\n",r2);
    return 0;
}

输出:

1 
13
1
全部评论

相关推荐

09-16 14:01
井冈山大学 Java
肖先生~:兄弟们,我发的她都点赞了,但是就是不给我微信
秋招被确诊为……
点赞 评论 收藏
分享
09-29 00:03
门头沟学院 Java
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务