pat 乙级 1029. 旧键盘(20)
来源:互联网 发布:python爬虫模拟登录 编辑:程序博客网 时间:2024/05/16 04:05
思路 :
count思想 :
先遍历 第一行 出现过 的 标记为 1
遍历第二行输入 出现过的 标记为0
定义数组保存 count 为1 的 遍历输出即可
注意 英文字母只输出大写 。
#include<stdio.h>#include<string.h>int main(){char s1[82];char s2[82];char sout[82];scanf("%s %s",s1, s2); int count[200] = {0}; //常用ASCII最大为127;for ( int i = 0; i < strlen(s1); i ++ ) {if ( s1[i] >= 97 ) { //也可以把97换成'a';减去32实现大小写转换,小写字母的ASCII码大于小写字母的count[s1[i] - 32] = 1; // 'k' - 'a' + 'A’= 'K',这样也能实现大小写转换} else {count[s1[i]] = 1;}}for ( int i = 0; i < strlen(s2); i ++ ) {if ( s2[i] >= 97 ) {count[s2[i] - 32] = 0;} else {count[s2[i]] = 0;}}int j = 0;for ( int i = 0; i < strlen(s1); i ++ ) {if ( s1[i] >= 97 && count[s1[i] - 32] > 0 ) { sout[j ++] = (char)(s1[i] - 32);count[s1[i] - 32] = 0;} else if (s1[i] < 97 && count[s1[i]] > 0) {sout[j ++] = s1[i];count[s1[i]] = 0;}}for( int i = 0; i < j; i ++ ) { //切记,以后再遇到逐个拷贝得来的字符串,一定要这么输出printf("%c", sout[i]);}return 0;}
阅读全文
0 0
- PAT-乙级-1029. 旧键盘(20)
- PAT乙级.1029. 旧键盘(20)
- PAT 乙级 1029. 旧键盘(20)
- 1029. 旧键盘(20)-PAT乙级
- PAT 乙级 1029. 旧键盘(20)
- PAT乙级 1029. 旧键盘(20)
- PAT乙级1029. 旧键盘(20)
- PAT 乙级 1029. 旧键盘(20)
- PAT乙级 1029. 旧键盘(20)
- [PAT乙级]1029. 旧键盘(20)
- pat 乙级 1029. 旧键盘(20)
- 1029. 旧键盘(20)--PAT乙级
- PAT 乙级 1029.旧键盘(20)
- PAT乙级1029. 旧键盘(20)
- PAT乙级1029. 旧键盘(20)
- PAT 乙级 1029.旧键盘
- [PAT-乙级]1029.旧键盘
- PAT乙级 旧键盘 (20)
- java 按值传递还是按照引用传递
- 单例模式
- SpringMVC配置web.xml文件详解(列举常用的配置)
- Oracle 之 Cloning $oracle_home (克隆安装oracle软件)
- 面向对象 多态
- pat 乙级 1029. 旧键盘(20)
- NYOJ-单调递增最长子序列(动态规划)
- Day17
- 12:变幻的矩阵( 1.8编程基础之多维数组)
- CodeForces
- 课后练习答案汇总
- TensorFlow实战:Chapter-7下(TFTS库与时间序列预测)
- 《Angular2入门系列实践》——如何实现路由传值
- 我的第一个Java“Hello World!”