1029 旧键盘

旧键盘上坏了几个键,于是在敲一段文字的时候,对应的字符就不会出现。现在给出应该输入的一段文字、以及实际被输入的文字,请你列出肯定坏掉的那些键。

输入格式:

输入在 2 行中分别给出应该输入的文字、以及实际被输入的文字。每段文字是不超过 80 个字符的串,由字母 A-Z(包括大、小写)、数字 0-9、以及下划线 _(代表空格)组成。题目保证 2 个字符串均非空。

输出格式:

按照发现顺序,在一行中输出坏掉的键。其中英文字母只输出大写,每个坏键只输出一次。题目保证至少有 1 个坏键。

输入样例:

7_This_is_a_test
_hs_s_a_es

输出样例:

7TI
 
思路:不用book标记的话,两层循环暴力解决没啥问题......
 
 1 #include<stdio.h>
 2 #include<string.h>
 3 #include<stdlib.h>
 4 #include<math.h>
 5 void changea_A(char num[]);
 6 int main()
 7 {
 8     char str1[10000],str2[10000];
 9     char huai[10000];
10     gets(str1);
11     gets(str2);
12     changea_A(str1);
13     changea_A(str2);
14     int len1=strlen(str1);
15     int len2=strlen(str2);
16     int t=0;
17     for(int i=0;i<len1;i++)
18     {
19         int T=0;
20         for(int j=0;j<len2;j++)
21         {
22             if(str1[i]==str2[j])
23                 break;
24             else
25                 T++;
26         }
27         if(T==len2)
28         {
29             int k=0;
30             for(int j=0;j<t;j++)
31             {
32                 if(str1[i]!=huai[j])
33                     k++;
34             }
35             if(k==t)
36                 huai[t++]=str1[i];
37         }
38         T=0;
39     }
40     for(int i=0;i<t;i++)
41         printf("%c",huai[i]);
42     return 0;
43 }
44 void changea_A(char num[])
45 {
46     int len=strlen(num);
47     for(int i=0;i<len;i++)
48     {
49         if(num[i]>='a'&&num[i]<='z')
50             num[i]=num[i]-'a'+'A';
51     }
52 }
大佬见笑,,
原文地址:https://www.cnblogs.com/xwl3109377858/p/10473252.html