c语言实现循环位移的函数

  • 循环左移

    #include <stdio.h>
    int lefttrot(int x, int n){
        if (n < 0) {
            printf("移动数目不可为负");
            return -1;
        }
        
        n %= 32;
        int book = x & (-1 >> (32 - n));
        return (x >> n) | (book << (32 - n));
    }
    
    int main(){
        printf("%d", lefttrot(-1, 100));
        return 0;
    }
    
  • 循环右移

    #include <stdio.h>
    int righttrot(int x, int n){
        if (n < 0) {
            printf("移动数目不可为负");
            return -1;
        }
        
        n %= 32;
        int book = x >> (32 - n);
        return (x << n) | book;
    }
    
    int main(){
        printf("%d", righttrot(-1, 100));
        return 0;
    }
    

相关推荐

  1. c语言实现循环函数

    2024-04-02 17:38:04       15 阅读
  2. C语言】6-6 数组循环 分数 20

    2024-04-02 17:38:04       37 阅读
  3. PTA 数组元素循环问题(C语言

    2024-04-02 17:38:04       186 阅读
  4. pta 7-31 字符串循环 C语言

    2024-04-02 17:38:04       16 阅读
  5. C语言实现toupper函数功能

    2024-04-02 17:38:04       31 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-04-02 17:38:04       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-04-02 17:38:04       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-04-02 17:38:04       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-04-02 17:38:04       20 阅读

热门阅读

  1. 深入了解Flutter中的Sealed Class及其使用

    2024-04-02 17:38:04       13 阅读
  2. linux脚本打包

    2024-04-02 17:38:04       12 阅读
  3. python系列教程220——哪种迭代最快

    2024-04-02 17:38:04       13 阅读
  4. 问答系统开发:基于深度学习的文本理解与生成

    2024-04-02 17:38:04       12 阅读
  5. 【leetcode面试经典150题】2.移除元素(C++)

    2024-04-02 17:38:04       9 阅读
  6. R语言提取站点的nc文件时间序列数据

    2024-04-02 17:38:04       13 阅读
  7. 每日一题 --- 用栈实现队列[力扣][Go]

    2024-04-02 17:38:04       13 阅读
  8. docker-打包&部署

    2024-04-02 17:38:04       9 阅读