时间限制: 1 Sec 内存限制: 128 MB
题目描述
编写这样一个程序:先输入一串字符A,再输入一串字符B,检查A,删掉其中与B中的任何一个字母相同的成份,大小写字母算同一字符,如T和t相同。最后输出删改后的字符串。如果A中没有B中任意一个字符,就输出Not the same character
输入
两行:
第一行:字符串A,长度不超过255
第二行:字符串B,长度不超过20
输出
一行:删改后的字符串或提示语
样例输入 Copy
THE COMPUTER IS GOOD the OEUH样例输出 Copy
T CMPTR IS GD t提示
delete(s,i,1);删除S字符串,第i个位置开始,长度为1的字符。
s='abcd',i=2,则执行delete(s,i,1)后,S新字符串的内容是:acd
V
V
V
V
V
V
V
V
V
V
V
V
解题:
#include<bits/stdc++.h> using namespace std; bool Delete(char a,char b[],int n) { for(int i=0;i<n;i++) if(a==b[i]||a-32==b[i]||a+32==b[i]) return 1; return 0; } int main() { char a[256],b[21]; int l,n;bool t=1; gets(a);gets(b); l=strlen(a);n=strlen(b); for(int i=0;i<l;i++) if(Delete(a[i],b,n)) { a[i]=0; t=0; } if(t) cout<<"Not the same character"; else for(int i=0;i<l;i++) if(a[i]>0) cout<<a[i]; return 0; }