国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

C語言每日一題之整數(shù)求二進(jìn)制1的個(gè)數(shù)

這篇具有很好參考價(jià)值的文章主要介紹了C語言每日一題之整數(shù)求二進(jìn)制1的個(gè)數(shù)。希望對大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

C語言每日一題之整數(shù)求二進(jìn)制1的個(gè)數(shù),c語言,開發(fā)語言

今天分享一道題目,用三種方法來求解
二進(jìn)制1的個(gè)數(shù)

方法1
我們的十進(jìn)制除10和取余數(shù)就可以得到我們每一位的數(shù)字,那我們的二進(jìn)制也可

#include<stdio.h>
int num_find_1(unsigned int n)
{
	int count = 0;
	while (n)
	{
		if (1 == n % 2)
		{
			count++;
		}
		n /= 2;
	}
	return count;
}
int main()
{
	int n = 0;
	scanf("%d", &n);
	int ret = num_find_1(n);
	printf("%d", ret);
	return 0;
}

這是一種方法,另外一種就是我們可以用移位操作符來算

int num_find_1(int n)
{
	int i = 0;
	int count = 0;
	for (i = 0; i < 32; i++)
	{
		if (((n >> i) & 1) == 1)
		{
			count++;
		}
	}
	return count;
}
int main()
{
	int n = 0;
	scanf("%d", &n);
	int ret = num_find_1(n);
	printf("%d", ret);
	return 0;
}



這個(gè)方法是不是也是特別妙呢,當(dāng)然還有更妙的方法,請看?。。?mark hidden color="red">文章來源:http://www.zghlxwxcb.cn/news/detail-613430.html


int num_find_1(int n)
{
	int i = 0;
	int count = 0;
	while (n)
	{
		n = n & (n - 1);
		count++;
	}
	return count;
}
int main()
{
	int n = 0;
	scanf("%d", &n);
	int ret = num_find_1(n);
	printf("%d", ret);
	return 0;
}



相信看完總會學(xué)會一種方法,今天的分享就到這里啦,不知道大家有沒有注意到我的開頭不一樣了,嘻嘻。文章來源地址http://www.zghlxwxcb.cn/news/detail-613430.html

到了這里,關(guān)于C語言每日一題之整數(shù)求二進(jìn)制1的個(gè)數(shù)的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 【LeetCode - 每日一題】1073. 負(fù)二進(jìn)制數(shù)相加 (2023.05.18)

    基數(shù)為 -2 。 實(shí)現(xiàn)兩個(gè) 0/1 數(shù)組串的加法。 這是一道模擬題。 設(shè) arr1[i] 和 arr2[i] 是數(shù)組 arr1 和 arr2 從低到高的第 i 位數(shù)。 首先回顧普通的二進(jìn)制數(shù)的相加,從低位開始計(jì)算,在計(jì)算的同時(shí)維護(hù)用一個(gè)變量 carry 維護(hù)進(jìn)位信息,因此,對于第 i 位的結(jié)果 ans[i] = arr1[i] + arr2[i] + c

    2024年02月05日
    瀏覽(18)
  • 2023-06-14 LeetCode每日一題(二進(jìn)制字符串前綴一致的次數(shù))

    點(diǎn)擊跳轉(zhuǎn)到題目位置 給你一個(gè)長度為 n 、下標(biāo)從 1 開始的二進(jìn)制字符串,所有位最開始都是 0 。我們會按步翻轉(zhuǎn)該二進(jìn)制字符串的所有位(即,將 0 變?yōu)?1)。 給你一個(gè)下標(biāo)從 1 開始的整數(shù)數(shù)組 flips ,其中 flips[i] 表示對應(yīng)下標(biāo) i 的位將會在第 i 步翻轉(zhuǎn)。 二進(jìn)制字符串 前綴

    2024年02月08日
    瀏覽(98)
  • 2023-5-26 LeetCode每日一題(二進(jìn)制矩陣中的最短路徑)

    點(diǎn)擊跳轉(zhuǎn)到題目位置 給你一個(gè) n x n 的二進(jìn)制矩陣 grid 中,返回矩陣中最短 暢通路徑 的長度。如果不存在這樣的路徑,返回 -1 。 二進(jìn)制矩陣中的 暢通路徑 是一條從 左上角 單元格(即,(0, 0))到 右下角 單元格(即,(n - 1, n - 1))的路徑,該路徑同時(shí)滿足下述要求: 路徑途

    2024年02月06日
    瀏覽(91)
  • (位運(yùn)算) 1356. 根據(jù)數(shù)字二進(jìn)制下 1 的數(shù)目排序 ——【Leetcode每日一題】

    (位運(yùn)算) 1356. 根據(jù)數(shù)字二進(jìn)制下 1 的數(shù)目排序 ——【Leetcode每日一題】

    難度:簡單 給你一個(gè)整數(shù)數(shù)組 arr 。請你將數(shù)組中的元素按照其二進(jìn)制表示中數(shù)字 1 的數(shù)目升序排序。 如果存在多個(gè)數(shù)字二進(jìn)制中 1 的數(shù)目相同,則必須將它們按照數(shù)值大小升序排列。 請你返回排序后的數(shù)組。 示例 1: 輸入 :arr = [0,1,2,3,4,5,6,7,8] 輸出 :[0,1,2,4,8,3,5,6,7] 解釋

    2024年02月12日
    瀏覽(89)
  • 【C語言】求二進(jìn)制位中一的個(gè)數(shù)

    【C語言】求二進(jìn)制位中一的個(gè)數(shù)

    原題鏈接:??途W(wǎng) 題目內(nèi)容: 寫一個(gè)函數(shù)返回參數(shù)二進(jìn)制中 1 的個(gè)數(shù),負(fù)數(shù)使用補(bǔ)碼表示。 比如: 15????0000 1111????4 個(gè) 1 方法一: NumberOf1函數(shù)的實(shí)現(xiàn)比較簡單,它使用了一個(gè)循環(huán),不斷將n除以2,并判斷余數(shù)是否為1。如果余數(shù)為1,則說明n的二進(jìn)制表示中最低位為1,計(jì)

    2024年02月09日
    瀏覽(26)
  • C語言:二進(jìn)制、八進(jìn)制、十六進(jìn)制整數(shù)的書寫及輸出

    C語言:二進(jìn)制、八進(jìn)制、十六進(jìn)制整數(shù)的書寫及輸出

    目錄 一、整型數(shù)據(jù)類型 二、二進(jìn)制、八進(jìn)制、十六進(jìn)制的書寫 1)二進(jìn)制 以 0b / 0B 開頭,不區(qū)分大小寫(數(shù)字0,而非字母o,下同) 2)八進(jìn)制 以數(shù)字 0 開頭 ????????3)十六進(jìn)制 以 0x / 0X 開頭, 三、二進(jìn)制、八進(jìn)制和十六進(jìn)制的輸出 八進(jìn)制? ?(%o): 十六進(jìn)制? ?(%x):

    2024年02月05日
    瀏覽(99)
  • 【每日一題Day218】LC1091 二進(jìn)制矩陣中的最短路徑 | BFS

    你駕駛出租車行駛在一條有 n 個(gè)地點(diǎn)的路上。這 n 個(gè)地點(diǎn)從近到遠(yuǎn)編號為 1 到 n ,你想要從 1 開到 n ,通過接乘客訂單盈利。你只能沿著編號遞增的方向前進(jìn),不能改變方向。 乘客信息用一個(gè)下標(biāo)從 0 開始的二維數(shù)組 rides 表示,其中 rides[i] = [starti, endi, tipi] 表示第 i 位乘客

    2024年02月08日
    瀏覽(87)
  • 寫一個(gè)函數(shù)返回參數(shù)二進(jìn)制中 1 的個(gè)數(shù)(c語言三種實(shí)現(xiàn)方法)

    寫一個(gè)函數(shù)返回參數(shù)二進(jìn)制中 1 的個(gè)數(shù)(c語言三種實(shí)現(xiàn)方法)

    (本文旨在自己做題時(shí)的總結(jié),我會給出不同的解法,后面如果碰到新的題目還會加入其中,等于是我自己的題庫。 方法一: 方法二: 這里說一個(gè)方法,任何一個(gè)進(jìn)制數(shù)%它的進(jìn)制位都可以得到它的最低位,任何一個(gè)進(jìn)制數(shù) / 它的進(jìn)制位都可以將最低位丟棄。比如: 這樣我

    2024年02月13日
    瀏覽(101)
  • 【C語言】宏實(shí)現(xiàn)一個(gè)整數(shù)的二進(jìn)制位的奇數(shù)位和偶數(shù)位交換

    【C語言】宏實(shí)現(xiàn)一個(gè)整數(shù)的二進(jìn)制位的奇數(shù)位和偶數(shù)位交換

    要寫一個(gè)宏實(shí)現(xiàn)將一個(gè)整數(shù)的二進(jìn)制位的奇數(shù)位和偶數(shù)位交換,我們首先要分析如何將一個(gè)整數(shù)的二進(jìn)制位的奇數(shù)位和偶數(shù)位交換 以下以整數(shù)7為例 7的二進(jìn)制: 0000 0000 0000?0000 0000 0000?0000 0111?? 7 奇數(shù)位與偶數(shù)位交換后為: 0000 0000 0000?0000 0000 0000?0000 1011? 11 ??分析: 交換

    2024年02月05日
    瀏覽(91)
  • c語言:用一個(gè)宏,可以將一個(gè)整數(shù)的二進(jìn)制位的奇數(shù)位和偶數(shù)位交換。

    c語言:用一個(gè)宏,可以將一個(gè)整數(shù)的二進(jìn)制位的奇數(shù)位和偶數(shù)位交換。

    ? ? ? ? ? ? ? ? ?用一個(gè)宏,可以將一個(gè)整數(shù)的二進(jìn)制位的奇數(shù)位和偶數(shù)位交換。 如:01,是1,交換完是10,是2. ? ? ? ? ? ? ? ? ? ? ? 舉個(gè)例子:1001 0110? ? ? ? ? ? ? ? ? ? ? ? ? 1001 0110 ? ? ? ? 奇數(shù)位上的數(shù)字是 ? ? 1 0 0 1 0 1 1 0? ? ? ? ? ?? ? 偶數(shù)位 ? ? 1 0 0

    2024年01月19日
    瀏覽(638)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包