PTA天梯賽練習集 L1-011 A-B (20 分)
阿新 • • 發佈:2018-12-18
本題要求你計算A−B。不過麻煩的是,A和B都是字串 —— 即從字串A中把字串B所包含的字元全刪掉,剩下的字元組成的就是字串A−B。
輸入格式:
輸入在2行中先後給出字串A和B。兩字串的長度都不超過10^4 ,並且保證每個字串都是由可見的ASCII碼和空白字元組成,最後以換行符結束。
輸出格式:
在一行中打印出A−B的結果字串。
輸入樣例:
I love GPLT! It’s a fun game! aeiou
輸出樣例:
I lv GPLT! It’s fn gm!
解題思路:
題目要求列印A-B的結果字串,也就是我們在對A進行輸出時,判斷該字元是否在B中出現,若不出現,則輸出。 可以用一個數組來標記該字元是否在B中出現。
事例程式碼:
#include<stdio.h>
int main()
{
char a[10005],b[10005];
int mark[1000]={0};
int i;
gets(a);
gets(b);
for (i = 0; b[i]!='\0';i++)
{
mark[b[i]] = 1;//將B中出現的字元的ASCII碼作為下標
}
for (i = 0; a[i]!='\0'; i++)
{
if (mark[a[i]]==0)
printf("%c",a[i] );
}
}