输入一个整数a,再输入两个整数p1p2,输出a的二进制表示中p1到p2位之间的数

#include<stdio.h>
int main()
{
        int a;
	int p1,p2;
	int i;
	printf("输入整数:");
	scanf("%d",&a);
	printf("输出哪两位之间的二进制数?\n");
	scanf("%d",&p1);
	scanf("%d",&p2);
	if(p1<p2&&p2<32&&p1>0)
	{
		for(i=1;i<p1;i++)
		{
			a=a>>1;
		}
		for(i=0;i<=p2-p1;i++)
		{
			printf("%d ",a&1);
			a=a>>1;
		}
		printf("\n");
	}
	else
	{
		printf("输入有误!");
	}
	return 0;
}

 

猜你喜欢

转载自blog.csdn.net/phenomenon_ting/article/details/89044440