zoukankan      html  css  js  c++  java
  • 程序设计实习 02 第i位替换

    #include <iostream>     //n 的第i位替换为m的第i位
    using namespace std;
    
    int bitManipulation1(int n, int m, int i) {
        return ((m>>i)&1) == 1?  (n|(1<<i)) : (n&(~(1<<i)));  //注意格式
        }
    
    int main() {
        int n, m, i, t;
        cin >> t;
        while (t--) { 
            cin >> n >> m >> i;
            cout << bitManipulation1(n, m, i) << endl;
        }
        return 0;
    }
    #include <iostream>    // n的第i位取反
    using namespace std;
    
    int bitManipulation2(int n, int i) {
        return (n>>i)&1 ==1?    (n&(~(1<<i))) : (n|(1<<i));
    }
    
    int main() {
        int t, n, i;
        cin >> t;
        while (t--) {
            cin >> n >> i;
            cout << bitManipulation2(n, i) << endl;
        }
        return 0;
    }
    #include <iostream>     //左边i位取反
    using namespace std;
    
    int bitManipulation3(int n, int i) {
        return ((~0)<<(32-i))^n;
        
    }
    int main() {
        int t, n, i;
        cin >> t;
        while (t--) {
            cin >> n >> i;
            cout << bitManipulation3(n, i) << endl;
        }
        return 0;
    }
  • 相关阅读:
    safeNet
    网店
    微信公众号自定义菜单与回车
    西游记对教育的启发
    zencart资源
    cmd批处理常用符号详解
    div垂直居中
    git工作量统计
    VS2012变化的快捷键:
    sql 树 递归
  • 原文地址:https://www.cnblogs.com/Latticeeee/p/8508617.html
Copyright © 2011-2022 走看看