zoukankan      html  css  js  c++  java
  • Work_8

    写一个函数返回参数二进制中 1 的个数
    比如: 15  =>  0000 1111  =>  4 个 1

    #define _CRT_SECURE_NO_WARNINGS
    #include <stdio.h>
    #include <stdlib.h>
    
    int Count_one_bits(unsigned int value){
        int count = 0;
        for (int i = 0; i < 8; i++){
            if ((value >> i) & 1){
                count++;
            }
        }
        return count;
    }
    
    int main(){
        int input;
        printf("请输入一个整数:
    ");
        scanf("%d", &input);
        printf("该整数的二进制中1的个数为:%d", Count_one_bits(input));
        printf("
    ");
        system("pause");
        return 0;
    }

    获取一个数二进制序列中所有的偶数位和奇数位,
    分别输出二进制序列。

    #define _CRT_SECURE_NO_WARNINGS
    #include <stdio.h>
    #include <stdlib.h>
    
    void Bit(int input){
        int temp = 0;
        printf("该整数二进制的偶数位为:
    ");
        for (int i = 31; i > 0; i = i - 2){
            temp = (input >> i) & 1;
            printf("%d ", temp);
        }
        printf("
    ");
        printf("该整数二进制的奇数位为:
    ");
        for (int i = 30; i >= 0; i = i - 2){
            temp = (input >> i) & 1;
            printf("%d ", temp);
        }
    }
    
    int main(){
        int input;
        printf("请输入一个整数:
    ");
        scanf("%d", &input);
        Bit(input);
        printf("
    ");
        system("pause");
        return 0;
    }

    输出一个整数的每一位。

    #define _CRT_SECURE_NO_WARNINGS
    #include <stdio.h>
    #include <stdlib.h>
    
    void Number(int input){
        //从最高为开始打印
        if (input < 9){
            printf("%d ", input);
            return;
        }
        Number(input / 10);
        printf("%d ", input % 10);
        return;
    
        ////从最低位开始打印
        //if (input > 9){
        //    printf("%d  ", input % 10);
        //    return Number(input / 10);
        //}
        //printf("%d ", input);
    }
    
    int main(){
        int input ;
        printf("请输入一个整数:
    ");
        scanf("%d", &input);
        printf("该整数的每一位为:
    ");
        Number(input);
        printf("
    ");
        system("pause");
        return 0;
    }

    编程实现:两个int(32位)整数m和n的二进制表达中,有多少个位(bit)不同?
    输入例子:
    1999 2299
    输出例子:7

    #define _CRT_SECURE_NO_WARNINGS
    #include <stdio.h>
    #include <stdlib.h>
    
    int Compare(int input1, int input2){
        int count = 0;
        for (int i = 0; i < 16; i++){
            if (((input1 >> i) & 1) != ((input2 >> i) & 1)){
                count++;
            }
        }
        return count;
    }
    
    int main(){
        int input1, input2;
        printf("请输入两个整数:
    ");
        scanf("%d %d", &input1, &input2);
        printf("%d", Compare(input1, input2));
        printf("
    ");
        system("pause");
        return 0;
    }
  • 相关阅读:
    Hbase写数据,存数据,读数据的详细过程 分类: B7_HBASE 2015-03-15 20:11 117人阅读 评论(0) 收藏
    机器学习(十四):深度学习梯度优化算法(SGD SGD-M NAG AdaGrad RMSProp Adam )
    机器学习(十三):卷积神经网络(CNN)
    机器学习(十一):FP增长(FP-growth)
    机器学习(十):Apriori算法
    Gulp命令自动生成精灵图
    esLint参数设置
    js 监控iframe URL的变化
    React+Redux学习笔记:React+Redux简易开发步骤
    React组件实现越级传递属性
  • 原文地址:https://www.cnblogs.com/lkimprove/p/10171710.html
Copyright © 2011-2022 走看看