蓝桥杯基础练习 01字串

蓝桥杯基础练习 01字串

资源限制
时间限制:1.0s 内存限制:256.0MB
问题描述
对于长度为5位的一个01串,每一位都可能是0或1,一共有32种可能。它们的前几个是:

00000

00001

00010

00011

00100

请按从小到大的顺序输出这32种01串。

输入格式
本试题没有输入。
输出格式
输出32行,按从小到大的顺序每行一个长度为5的01串。
样例输出
00000
00001
00010
00011
<以下部分省略>

不用进制转换写法
#include
#include
int main()
{
     
int a[32][5];
int it=1;int m;int i;int d;int x;
for( m=4;m>=0;m--)
{
     
x=0;d=(pow(2,(4-m)));
for( i=0;i<32;i++)
{
     
	if(x==0){
     
		a[i][4-m]=0;
	    if(it%d==0)
			x=1;
		it++;
	}
else{
     
a[i][4-m]=1;
if(it%d==0)
x=0;
it++;
	}
	
}
}
for( i=0;i<32;i++)

{
     for( m=0;m<5;m++)
{
     printf("%d",a[i][4-m]);
}
printf("\n");
}
return 0;
}

用进制转换`

#include
int main()
{
     
	int i;
	for(i=0;i<32;i++)
{
     
	printf("%d",(i/16)%2); 
	printf("%d",(i/8)%2);
	printf("%d",(i/4)%2);
	printf("%d",(i/2)%2);
	printf("%d%",i%2);
	printf("\n");
}
	return 0;
 } 

你可能感兴趣的:(蓝桥杯)