chnmd 2021-11-07 21:12 采纳率: 75%
浏览 222
已结题

7-3 位运算 (15 分)

给定一个数,将该数的某二进制位上置0、置1或取反。

输入格式:
第1行:输入一个十进制整数。(32位int取值范围,其二进制数补码表示)

第2行后:每行输入一个位操作运算要求。

格式:输入位操作运算类型(1表示置0, 2表示置1,3表示按位取反) 位数(从最低位向高位,范围从0~31)

最终以键盘输入^Z 或 文件结束(EOF标志)。

输出格式:
输出位运算后的整数值。

输入样例:
在这里给出一组输入。例如:

3
1 0
1 1
2 3
3 1
3 2
2 0
结尾无空行
输出样例:
在这里给出相应的输出。例如:

15
结尾无空行

  • 写回答

2条回答 默认 最新

  • 从善若水 5G/6G通信领域优质创作者 2021-11-07 21:34
    关注
    
    #include<stdio.h>
    #include <ctype.h>
    int main()
    {
        int num=0;
        scanf("%d",&num);
        
        int a,b;
        
        while(EOF != scanf("%d %d",&a,&b)){
            switch(a){
                case 1:
                    num = num & (~(1<<b));
                    break;
                case 2:
                    num = num | (1<<b);
                    break;
                
                case 3:
                    if((num>>b)&0x1){
                        num = num & (~(1<<b));
                    }else{
                        num = num | (1<<b);
                    }
                    break;
            }
        }
        printf("%d\n",num);
        
        return 0;
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 11月21日
  • 已采纳回答 11月13日
  • 创建了问题 11月7日

悬赏问题

  • ¥15 宇视监控服务器无法登录
  • ¥15 PADS Logic 原理图
  • ¥15 PADS Logic 图标
  • ¥15 电脑和power bi环境都是英文如何将日期层次结构转换成英文
  • ¥20 气象站点数据求取中~
  • ¥15 如何获取APP内弹出的网址链接
  • ¥15 wifi 图标不见了 不知道怎么办 上不了网 变成小地球了
  • ¥50 STM32单片机传感器读取错误
  • ¥50 power BI 从Mysql服务器导入数据,但连接进去后显示表无数据
  • ¥15 (关键词-阻抗匹配,HFSS,RFID标签天线)