国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

位運算練習(1、將整數中的幾位取出來,取反輸出二進制2、將整數中間某一位置位 )

2019-11-11 07:20:58
字體:
來源:轉載
供稿:網友

1、  輸入一個整數a,再輸入兩個整數p1,p2(p1,p2<32),將該整數的二進制表示方法中從右端開始的p1到p2位取反后輸出

/*****************************************************copyright (C), 2016-2017, Lighting Studio. Co.,     Ltd. File name:Author:王    Version:0.1    Date: Description:Funcion List: *****************************************************/#include <stdio.h>int main(){	int a,p1,p2,temp1;	int i,mask;	PRintf("Enter the number:");	scanf("%d",&a);	printf("choose the number between p1 to p2:");	scanf("%d%d",&p1,&p2);	if(p1>p2)                                 // 如果p1>p2 時進行數據交換	{		p1 = p1 + p2;		p2 = p1 - p2;		p1 = p1 - p2;	}	if(p1 <= p2)	{		temp1 = a >> (p1-1);               // 將這個數右移,使得所需要的位數是從最右端開始	}	for(i=(p2-p1);i>=0;i--)                     // 選取p1和p2之間的這段位數		putchar(((temp1 >> i) & 1) ? '0' : '1');          // 輸出這個數如果是1,則輸出0,實現取反	printf("/n");    return 0;}

2、輸入一個整數a,再輸入兩個整數p(p<32),v(0|1),將該整數a的p位設置為v,輸出修改后的該整數的二進制表示.

/*****************************************************copyright (C), 2016-2017, Lighting Studio. Co.,     Ltd. File name:Author:王    Version:0.1    Date: Description:Funcion List: *****************************************************/#include <stdio.h>#include <string.h>int main(){	int a,p,v,mask,i;	printf("Enter a number:");	scanf("%d",&a);	printf("Enter the location:");	scanf("%d",&p);	printf("choose 0 or 1:");	scanf("%d",&v);	if(v == 0)                          //判斷置0還是置1	{		mask = ~(1 << p-1);         // 設計掩碼,使得所需要置0的那一位為0 		a = (a & mask);             // 按位與 實現清零	}	else	{		mask = (1 << p-1);           // 需要置1的那一位保持為1,其余為0,使用按位或 實現置1		a = (a | mask);	}	printf("The answer is:");	for(i=sizeof(a);i>=0;i--)		printf("%d",(a>>i)&1);	printf("/n");    return 0;}


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 永新县| 烟台市| 江北区| 同心县| 临高县| 武安市| 鄂州市| 霍城县| 吴堡县| 巫溪县| 安国市| 萝北县| 托里县| 乌兰察布市| 邢台县| 新平| 红桥区| 大港区| 汉阴县| 博客| 安国市| 荥经县| 海城市| 镇安县| 浦江县| 巩留县| 义马市| 正蓝旗| 金昌市| 怀集县| 靖边县| 扎赉特旗| 温宿县| 神池县| 鄂伦春自治旗| 砚山县| 永嘉县| 旺苍县| 陵水| 田东县| 龙口市|