91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

【C語言】輸入一個整數,輸出該數二進制表示中1的個數(三種方法)

發布時間:2020-08-05 22:25:47 來源:網絡 閱讀:1151 作者:韓靜靜 欄目:編程語言

輸入一個整數,輸出該數二進制表示中1的個數。如輸入32,輸出1.


代碼實現:


方法1:與運算


#define _CRT_SECURE_NO_WARNINGS 1
#include<iostream>
using namespace std;

int FindOneNumber(unsigned int num)
{
    int numberofOne = 0;
    while (num)
    {
        num = num & (num - 1);
        numberofOne++;
    }
    return numberofOne;
}


void Test()
{
    int num = 32;
    cout<<FindOneNumber(num)<<endl;
}


int main()
{
    Test();
    system("pause");
    return 0;
}


方法2:模除法

#define _CRT_SECURE_NO_WARNINGS 1
#include<iostream>
using namespace std;

int FindOneNumber(unsigned int num)
{
    int numberofOne = 0;
    while (num)
    {
        if(num % 2 == 1)        
        numberofOne++;
        num /= 2;
    }
    return numberofOne;
}


void Test()
{
    int num = 32;
    cout << FindOneNumber(num) << endl;
}


int main()
{
    Test();
    system("pause");
    return 0;
}


方法3:移位

#define _CRT_SECURE_NO_WARNINGS 1
#include<iostream>
using namespace std;

int FindOneNumber(unsigned int num)
{
    int numberofOne = 0;
    while (num)
    {
        if (num & 1)
            numberofOne++;
        num = num >> 1;
    }
    return numberofOne;
}


void Test()
{
    int num = 32;
    cout << FindOneNumber(num) << endl;
}


int main()
{
    Test();
    system("pause");
    return 0;
}


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

理塘县| 察雅县| 德江县| 东丽区| 马鞍山市| 太康县| 绥宁县| 江阴市| 金塔县| 大竹县| 虎林市| 新乡市| 虹口区| 彭州市| 满城县| 孟州市| 耒阳市| 梓潼县| 北海市| 邵阳县| 桐柏县| 安陆市| 东阳市| 常熟市| 凤山市| 中西区| 嘉峪关市| 明水县| 长治市| 武邑县| 彭阳县| 昌宁县| 安远县| 永安市| 涿鹿县| 聂拉木县| 仁寿县| 绥中县| 玉树县| 阿城市| 正宁县|