蓝桥杯基础训练——01字符

文章内容是关于一名大一新生的编程学习经历,他分享了如何通过嵌套循环来生成并按顺序输出所有可能的5位01串。代码示例展示了如何用C语言实现这一过程,并提到可以根据不同的输出格式要求调整换行条件。
摘要由CSDN通过智能技术生成

大家好,我是刚入大一的编程学习小白,来到这里与大家一起学习。这些内容是对自己学习的一种复习同时也希望能帮助后来的同学。(欢迎各位学长或者大佬指出问题或建议哦!)

话不多说,我们上题。

01字串

问题描述:

对于长度为5位的一个01串,每一位都可能是0或1,一共有32种可能。

它们的前几个是:

00000

00001

00010

00011

00100

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

该题为要求输入格式 

输出格式:

有的题目会要求每输出一组数后换行

另外一种则是每输出四组数后换行,一共八行(每两个数之间加空格);

如:

00000 00001 00010 00011
00100 00101 00110 00111
01000 01001 01010 01011
01100 01101 01110 01111
10000 10001 10010 10011
10100 10101 10110 10111
11000 11001 11010 11011
11100 11101 11110 11111

思路:

该题可以直接套娃,暴力输出使用五个循环就能实现顺序输出了; 

代码展示(该结果如上)

#include <stdio.h>
int main()
{
	int a,b,c,d,e,i=0;
	for(a=0;a<2;a++)
	{
		for(b=0;b<2;b++)
		{
			for(c=0;c<2;c++)
			{
				for(d=0;d<2;d++)
				{
					for(e=0;e<2;e++)
					{
					printf("%d%d%d%d%d ",a,b,c,d,e);
                    i++; 
                    if(i%4==0)
	                printf("\n");
                    }
				}
			}
		}
	}					
	
}

 输出结果:

 

 如果家人们的题目没有要求没四组一换行,把if自行删除就好了。

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

人间游玩914

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值