字符串处理请教

[复制链接]
607|3
 楼主| limee 发表于 2019-6-28 07:35 | 显示全部楼层 |阅读模式

比如字符串abgfjg

显示它们所有大小写的组合,顺序不变

也就是
abgfjg
Abgfjg
aBgfjg
不知道表达的明白了吗?
mcu5i51 发表于 2019-6-28 08:22 | 显示全部楼层
1. 所有数据转换成小写,作为初始状态
2. 用一个整数计数变量计数,这个变量的位长度大于字符数,如果没有什么要求用16位或32位就好,16位的也要打印6W多了;
3. 从0 计数, 和一个长度相关的数相与,如果是8个字符,测定仪的数(掩码)就是0x00ff了,直到数据为0时停止;
4. 调整输出字符,对应的位是0就是小写,1就是大写,
mcu5i51 发表于 2019-6-28 08:22 | 显示全部楼层
1. 所有数据转换成小写,作为初始状态
2. 用一个整数计数变量计数,这个变量的位长度大于字符数,如果没有什么要求用16位或32位就好,16位的也要打印6W多了;
3. 从0 计数, 和一个长度相关的数相与,如果是8个字符,测定仪的数(掩码)就是0x00ff了,直到数据为0时停止;
4. 调整输出字符,对应的位是0就是小写,1就是大写,
tianxj01 发表于 2019-6-28 09:29 | 显示全部楼层
这不就是典型二进制嘛,6个字母代表6bit,大小写代表0和1,你总共可以出来64种不同组合=6bit二进制数。
至于怎么处理,你自己选择0代表小写或者大写,否则就反之。
然后就从0开始+1,直到64结束循环,根据位0或者1,填上对应的大小写,或者直接在ASCII码加上或者减去大小写的差值32。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

301

主题

475

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部