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

C語言經(jīng)典100例題(55)--從一個整數(shù)a中把從右端開始的4-7位取出來

這篇具有很好參考價值的文章主要介紹了C語言經(jīng)典100例題(55)--從一個整數(shù)a中把從右端開始的4-7位取出來。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

目錄

題目

問題分析

右移操作符

左移操作符

方法一

方法二?

運行結(jié)果


題目

用c語言從一個整數(shù)a中把從右端開始的4-7位取出來??

問題分析

右移操作符

????????右移操作符是一種位運算符,用于將二進(jìn)制數(shù)向右移動指定的位數(shù)。它通常用符號" >> "表示。右移一位相當(dāng)于將二進(jìn)制數(shù)除以2,右移n位相當(dāng)于將二進(jìn)制數(shù)除以2的n次方。

????????例如,二進(jìn)制數(shù)1101右移兩位,結(jié)果為0011,相當(dāng)于十進(jìn)制數(shù)13除以4。

????????在計算機(jī)程序中,右移操作符用于對數(shù)據(jù)進(jìn)行位處理,例如提取某些位信息,對數(shù)據(jù)進(jìn)行分組,加密等。

左移操作符

????????左移操作符是一種位運算操作符,通常用于將二進(jìn)制數(shù)向左移動指定的位數(shù)。在大部分編程語言中,左移操作符用符號“<<”表示。

????????例如,將二進(jìn)制數(shù)1010(十進(jìn)制數(shù)為十)左移兩個位,則得到結(jié)果為0100(十進(jìn)制數(shù)為四)。

????????在計算機(jī)中,左移操作符可以用于加速計算,因為左移一位相當(dāng)于乘以2的1次方,左移n位相當(dāng)于乘以2的n次方。因此,左移操作符常用于優(yōu)化代碼的性能。

方法一

?可以使用位運算和移位操作來取出這些位,具體實現(xiàn)如下:

#include <stdio.h>

int main() {
    int a = 0b1010111101010101; // 假設(shè)a為二進(jìn)制數(shù)1010111101010101
    int b = (a >> 3) & 0b1111; // 取右端第7~4位,即把a右移3位再與0b1111(二進(jìn)制數(shù)1111)按位與
    printf("%d\n", b); // 輸出結(jié)果為1010,即十進(jìn)制數(shù)10
    return 0;
}

????????其中,>>表示右移操作,把二進(jìn)制數(shù)向右移動指定的位數(shù),即把右端的位數(shù)舍去;&表示按位與運算,兩個二進(jìn)制數(shù)按位取與,即對應(yīng)位置上的數(shù)都為1時結(jié)果為1,否則為0。在此代碼中,首先將a向右移動3位,即保留右端第7~4位,然后再與0b1111按位與,即把左側(cè)的位數(shù)都清零,最終得到的結(jié)果就是從右端開始的4-7位。?

方法二?

(1)先使a右移4位。
(2)設(shè)置一個低4位全為1,其余全為0的數(shù)??捎脋(~0<<4)
(3)將上面二者進(jìn)行&運算。

#include <stdio.h>
int main()
{
	unsigned a, b, c, d;
	scanf("%o", &a);//輸入一個二進(jìn)制數(shù)
	b = a >> 3;  //(1)先使a右移3位。
	c = ~(~0 << 4);  //(2)設(shè)置一個低4位全為1, 其余全為0的數(shù)。
	d = b & c;          //(3)將上面二者進(jìn)行& 運算
	printf("%o\n%o\n", a, d);
}

運行結(jié)果

?C語言經(jīng)典100例題(55)--從一個整數(shù)a中把從右端開始的4-7位取出來,C語言經(jīng)典100例題,c語言文章來源地址http://www.zghlxwxcb.cn/news/detail-705869.html

到了這里,關(guān)于C語言經(jīng)典100例題(55)--從一個整數(shù)a中把從右端開始的4-7位取出來的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

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

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

相關(guān)文章

  • 有關(guān)C語言指針的經(jīng)典例題

    有關(guān)C語言指針的經(jīng)典例題

    ?1.通過地址運算符獲得地址值 ? 2.輸入a,b,按從小到大的順序輸出 3 3.用指針法訪問數(shù)組元素 ?4.從鍵盤輸入10個整數(shù),放入一堆數(shù)組a中,然后將該數(shù)組中的元素值依次輸出 ?5.將10個數(shù)的最小值換到最前面的位置 6.求二維數(shù)組元素的最大值 ?7.用指針法實現(xiàn)字符串的復(fù)制 8

    2024年02月04日
    瀏覽(17)
  • C語言遞歸算法實現(xiàn)經(jīng)典例題

    C語言遞歸算法實現(xiàn)經(jīng)典例題

    遞歸是一種編程技術(shù),它通過在函數(shù)內(nèi)部反復(fù)調(diào)用自身來解決問題。當(dāng)一個程序調(diào)用自己時,這就稱為遞歸調(diào)用。遞歸可以有助于簡化某些算法的實現(xiàn)和理解。在遞歸過程中,每個調(diào)用都會將一些數(shù)據(jù)保存在棧上,直到遞歸結(jié)束后才能被處理并彈出棧。 遞歸通常有兩個部分:

    2024年02月05日
    瀏覽(18)
  • c語言經(jīng)典例題講解(輸出菱形,喝汽水問題)

    c語言經(jīng)典例題講解(輸出菱形,喝汽水問題)

    目錄 一、輸出菱形 二、喝汽水問題 方法1:一步一步來? ?方法二:直接套公式 ? 輸出類似于下圖的菱形:? ? 通過分析:1、先分為上下兩部分輸出? ? ? ? ? ? ? ? ? ? 2.在輸出前先輸出空格 ? ? ? ? ? ? ? ? ? 3.找規(guī)律進(jìn)行輸出 可知,可令上半部分line行,下半部分便是

    2024年02月13日
    瀏覽(20)
  • 題目:一個整數(shù),它加上 100 后是一個完全平方數(shù),再加上 168 又是一個完全平方數(shù),請問該數(shù)是多少?

    題目:一個整數(shù),它加上 100 后是一個完全平方數(shù),再加上 168 又是一個完全平方數(shù),請問該數(shù)是多少? 完全平方指用一個整數(shù)乘以自己例如1×1,2×2,3×3等,依此類推。若一個數(shù)能表示成某個整數(shù)的平方的形式,則稱這個數(shù)為完全平方數(shù)。 完全平方數(shù)是非負(fù)數(shù) (下面會說到

    2024年02月04日
    瀏覽(27)
  • C 語言經(jīng)典100例(菜鳥在線工具)

    C 語言經(jīng)典100例(菜鳥在線工具)

    C 語言經(jīng)典100例 C 語言經(jīng)典100例 菜鳥工具 C代碼在線運行工具 搜索引擎 前端開發(fā)

    2024年02月11日
    瀏覽(17)
  • C語言經(jīng)典編程題100例(61~80)

    目錄 61、練習(xí)7-7 矩陣運算 62、練習(xí)7-8 方陣循環(huán)右移 63、習(xí)題6-1 分類統(tǒng)計字符個數(shù) 64、習(xí)題6-2 使用函數(shù)求特殊a串?dāng)?shù)列和 65、習(xí)題6-4 使用函數(shù)輸出指定范圍內(nèi)的Fibonacci數(shù) 66、習(xí)題6-5 使用函數(shù)驗證哥德巴赫猜想 67、習(xí)題6-6 使用函數(shù)輸出一個整數(shù)的逆序數(shù) 68、練習(xí)8-2 計算兩數(shù)的

    2024年02月02日
    瀏覽(16)
  • C語言編程經(jīng)典100例——11至20例

    C語言編程經(jīng)典100例——11至20例

    目錄 第 11 例 第 12 例 第 13 例 第 14 例 第 15 例 第 16 例 第 17 例 第 18 例 第 19 例 第 20 例 程序源碼: 程序運行結(jié)果: 程序源碼: 程序運行結(jié)果: 程序源碼: 程序運行結(jié)果: 程序源碼: 程序運行結(jié)果: 程序源碼: 程序運行結(jié)果: 程序源碼: 程序運行結(jié)果: 程序源碼:

    2024年02月07日
    瀏覽(20)
  • C語言:輸入百分制成績(0-100間整數(shù)),輸出相應(yīng)的五級制成績(A-E)。

    C語言:輸入百分制成績(0-100間整數(shù)),輸出相應(yīng)的五級制成績(A-E)。A-[90,100]、B-[80,89]、C-[70,79]、D-[60,69]、E-[0,59]。

    2024年02月11日
    瀏覽(22)
  • c語言——輸出一個整數(shù)的所有因數(shù)

    c語言——輸出一個整數(shù)的所有因數(shù)

    ? 當(dāng)對這段代碼進(jìn)行分塊分析時,可以將其分為以下幾個部分: 第一部分: 這部分代碼包含了頭文件 stdio.h 和 stdlib.h 的引入以及 main() 函數(shù)的定義。定義了一個整型變量 number ,用于存儲用戶輸入的整數(shù)。還定義了一個整型變量 i ,用于循環(huán)計數(shù)。 通過 printf 函數(shù)打印出提示

    2024年02月12日
    瀏覽(30)
  • C語言程序之經(jīng)典習(xí)題:while循環(huán)計算1到一百(100)所有數(shù)據(jù)之和

    C語言程序之經(jīng)典習(xí)題:while循環(huán)計算1到一百(100)所有數(shù)據(jù)之和 思路:首先是定義兩個變量sum和date,數(shù)字和1到100的和 引入while循環(huán) 目的是使循環(huán)到100就停止, 我們一步步來,先來循環(huán)出1到100, 然后再來計算1到100的和---sum = sum + date;//累加0到100的和 然后在循環(huán)內(nèi)寫出累加

    2024年02月11日
    瀏覽(27)

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

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

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

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

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包