
蓝桥杯-基础练习 01字符
发布日期:2021-05-14 16:34:39
浏览次数:19
分类:精选文章
本文共 943 字,大约阅读时间需要 3 分钟。
要列出所有长度为5位的01串并按从小到大的顺序排列,总共有32种情况。以下是两种实现方法:
方法一:暴力枚举(枚举法)
这种方法最直接,通过循环遍历每一位的可能性,按顺序生成所有组合。
#includeint main() { for(int i=0; i<2; i++) { for(int j=0; j<2; j++) { for(int k=0; k<2; k++) { for(int a=0; a<2; a++) { for(int b=0; b<2; b++) { printf("%d%d%d%d%d\n",i,j,k,a,b); } } } } } return 0;}
运行输出示例:
0000000001000100001100100001010011000111...11111
方法二:转化为2进制
将整数转换为两位的二进制表示,然后生成5位二进制字符串。
#includeint main() { for(int i=0; i<32; i++) { char binary[6]; //防止缓冲区溢出 int x=i; int j=4; while(x>0 && j>=0) { binary[j] = (x&1) + '0'; x >>=1; j--; } for(j=5; j>0; j--) { binary[j] = '0'; } printf("%s\n",binary+1); } return 0;}
这个方法效率更高,但逻辑稍微复杂。
发表评论
最新留言
路过,博主的博客真漂亮。。
[***.116.15.85]2025年04月12日 15时22分14秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
ORCAD创建元件库时,格点对不起怎么办
2019-03-11
Allegro中如何消除器件本身Pin间距报错
2019-03-11
AD中拖动器件,无法移动在一起如何解决
2019-03-11
linux--练习001-基础类型
2019-03-11
Flask--简介
2019-03-11
Flask模板--过滤器与测试器
2019-03-11
16 python基础-恺撒密码
2019-03-11
06.1 python基础--结构控制
2019-03-11
Frame--Api框架
2019-03-11
idea 在Debug 模式中运行语句中函数的方法
2019-03-11
springboot2.1.1开启druid数据库连接池并开启监控
2019-03-11
《朝花夕拾》金句摘抄(五)
2019-03-11
Boostrap技能点整理之【网格系统】
2019-03-11
新闻发布项目——业务逻辑层(UserService)
2019-03-11
hibernate正向生成数据库表以及配置——hibernate.cfg.xml
2019-03-11
javaWeb服务详解(含源代码,测试通过,注释) ——Emp的Dao层
2019-03-11
java实现人脸识别源码【含测试效果图】——Dao层(IUserDao)
2019-03-11