中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

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

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

寫一個函數返回參數二進制中 1 的個數(三種方法)

發布時間:2020-07-27 20:07:44 來源:網絡 閱讀:195 作者:夢T醒 欄目:編程語言

1.運用了除法,取余方式遞推出結構
2.運用右移符(>>)運算
3.利用算術與(&)運算

三種方法效率越來越高,減少成本

#include<stdio.h>

int Number1(int n)
{
    int k;
    int count=0;
    while (n > 0)
    {
        k = n % 2;
        n /= 2;
        if (1 == k)
        {
            count++;
        }
    }
    return count;
}

int Number2(int n)
{
    int count = 0;
    while (n>0)
    {
        if ((n & 1) == 1)
        {
            count++;
        }
        n = n >>1 ;
    }
    return count;
}

int Number3(int n)
{
    int count = 0;
    while (n)
    {
        n = n&(n - 1);
        count++;
    }
    return count;
}
int main()
{
    int n;
    printf("請輸入一個數:\n");
    scanf("%d",&n);
    int ret1=Number1(n);
    printf("%d\n",ret1);
    int ret2 = Number2(n);
    printf("%d\n",ret2);
    int ret3 = Number3(n);
    printf("%d\n",ret3);
    system("pause");
    return 0;
}
向AI問一下細節

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

AI

江永县| 敦化市| 栾城县| 楚雄市| 石屏县| 鹤山市| 肇东市| 龙泉市| 高邑县| 泸水县| 青岛市| 屏边| 曲阜市| 上高县| 伊通| 青浦区| 卫辉市| 永登县| 永安市| 洛川县| 丽水市| 即墨市| 宣恩县| 海阳市| 南康市| 九台市| 长治县| 前郭尔| 临武县| 上犹县| 望都县| 麦盖提县| 定安县| 博白县| 拜泉县| 板桥市| 田东县| 尉犁县| 三门峡市| 深水埗区| 栾川县|