博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
1033 旧键盘打字
阅读量:5126 次
发布时间:2019-06-13

本文共 1129 字,大约阅读时间需要 3 分钟。

旧键盘上坏了几个键,于是在敲一段文字的时候,对应的字符就不会出现。现在给出应该输入的一段文字、以及坏掉的那些键,打出的结果文字会是怎样?

输入格式:

输入在 2 行中分别给出坏掉的那些键、以及应该输入的文字。其中对应英文字母的坏键以大写给出;每段文字是不超过 105​​ 个字符的串。可用的字符包括字母 [a-zA-Z]、数字0-9、以及下划线 _(代表空格)、,.-+(代表上档键)。题目保证第 2 行输入的文字串非空。

注意:如果上档键坏掉了,那么大写的英文字母无法被打出。

输出格式:

在一行中输出能够被打出的结果文字。如果没有一个字符能被打出,则输出空行。

输入样例:

7+IE.7_This_is_a_test.

输出样例:

_hs_s_a_tst
 
思路:注意存在输出为空的情况......
 
1 #include
2 #include
3 #include
4 int main() 5 { 6 int book[200]={
0};//以字符为下标存坏键 7 char str; 8 int flag=0;//flag=0为无输出 9 while((str=getchar())!='\n') 10 {11 if(str>='A'&&str<='Z')12 book[str-'A'+'a']=1;//大写转小写存入13 book[str]=1;//存入其他坏键 14 }15 if(book['+']==1)//无大写输出 16 {17 for(int i='A';i<='Z';i++)18 book[i]=1;//标记 19 }20 while((str=getchar())!='\n')21 {22 if(book[str]==1)23 continue;24 printf("%c",str);25 flag=1;//flag为1有输出 26 }27 if(flag==0)28 printf("\n");//无输出则空行 29 return 0; 30 }

 

 

转载于:https://www.cnblogs.com/xwl3109377858/p/10473365.html

你可能感兴趣的文章
集合体系
查看>>
vi命令提示:Terminal too wide
查看>>
引用 移植Linux到s3c2410上
查看>>
MySQL5.7开多实例指导
查看>>
[51nod] 1199 Money out of Thin Air #线段树+DFS序
查看>>
Red and Black(poj-1979)
查看>>
分布式锁的思路以及实现分析
查看>>
腾讯元对象存储之文件删除
查看>>
jdk环境变量配置
查看>>
安装 Express
查看>>
包含列的索引:SQL Server索引的阶梯级别5
查看>>
myeclipse插件安装
查看>>
浙江省第十二届省赛 Beauty of Array(思维题)
查看>>
NOIP2013 提高组 Day1
查看>>
cocos2dx 3.x simpleAudioEngine 长音效被众多短音效打断问题
查看>>
存储(硬件方面的一些基本术语)
查看>>
观察者模式
查看>>
Weka中数据挖掘与机器学习系列之基本概念(三)
查看>>
Win磁盘MBR转换为GUID
查看>>
大家在做.NET B/S项目的时候多用什么设技术啊?
查看>>