1. 程式人生 > >1029 舊鍵盤 C語言 求助!最後一個測試點過不去

1029 舊鍵盤 C語言 求助!最後一個測試點過不去

求助
求助求助求助求助求助求助求助求助
最後一個測試點就是過不去!!!!!!!!!!!!!!!!!

1029 舊鍵盤(20)(20 分)
舊鍵盤上壞了幾個鍵,於是在敲一段文字的時候,對應的字元就不會出現。現在給出應該輸入的一段文字、以及實際被輸入的文字,請你列出肯定壞掉的那些鍵。
輸入格式:
輸入在2行中分別給出應該輸入的文字、以及實際被輸入的文字。每段文字是不超過80個字元的串,由字母A-Z(包括大、小寫)、數字0-9、以及下劃線“_”(代表空格)組成。題目保證2個字串均非空。
輸出格式:
按照發現順序,在一行中輸出壞掉的鍵。其中英文字母只輸出大寫,每個壞鍵只輸出一次。題目保證至少有1個壞鍵。
輸入樣例:
7_This_is_a_test
_hs_s_a_es
輸出樣例:
7TI

#include <stdio.h>
#include <string.h>

int main(){
    char s1[100];
    char s2[100];
    int j=0,k;
    scanf ("%s%s",s1,s2);
    int len1=strlen(s1),len2=strlen(s2);
    char f[100]={};
    for(int i=0;i<len2;++i) {
        while(s1[j]!=s2[i]){    
            for( k=0;k<strlen(f);++k){
                if
(s1[j]>='a'&&s1[j]<='z'){ s1[j]=s1[j]-'a'+'A'; } if(s1[j]==f[k]) break; } if(k>=strlen(f)){ f[strlen(f)]=s1[j]; } ++j; } ++j; } for
(int i=0;i<strlen(f);++i){ printf("%c",f[i]); } }

這裡寫圖片描述
求助
求助求助求助求助求助求助求助求助
最後一個測試點就是過不去!!!!!!!!!!!!!!!!!