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

首頁 > 學院 > 開發(fā)設計 > 正文

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

2019-11-11 07:44:33
字體:
供稿:網(wǎng)友

1、  輸入一個整數(shù)a,再輸入兩個整數(shù)p1,p2(p1,p2<32),將該整數(shù)的二進制表示方法中從右端開始的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 時進行數(shù)據(jù)交換	{		p1 = p1 + p2;		p2 = p1 - p2;		p1 = p1 - p2;	}	if(p1 <= p2)	{		temp1 = a >> (p1-1);               // 將這個數(shù)右移,使得所需要的位數(shù)是從最右端開始	}	for(i=(p2-p1);i>=0;i--)                     // 選取p1和p2之間的這段位數(shù)		putchar(((temp1 >> i) & 1) ? '0' : '1');          // 輸出這個數(shù)如果是1,則輸出0,實現(xiàn)取反	printf("/n");    return 0;}

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

/*****************************************************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);             // 按位與 實現(xiàn)清零	}	else	{		mask = (1 << p-1);           // 需要置1的那一位保持為1,其余為0,使用按位或 實現(xiàn)置1		a = (a | mask);	}	printf("The answer is:");	for(i=sizeof(a);i>=0;i--)		printf("%d",(a>>i)&1);	printf("/n");    return 0;}


發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 普宁市| 郸城县| 海城市| 沈丘县| 灵山县| 固安县| 上林县| 萝北县| 黑水县| 沈丘县| 二连浩特市| 扎鲁特旗| 宁强县| 大荔县| 库尔勒市| 屯留县| 大港区| 梅州市| 山西省| 太仆寺旗| 汉沽区| 万源市| 茌平县| 禄劝| 丽江市| 高淳县| 桂林市| 白朗县| 富川| 平乐县| 牟定县| 盐边县| 甘洛县| 湘潭县| 天门市| 鹿泉市| 庆安县| 峨眉山市| 神木县| 德阳市| 大渡口区|