水题~
老是忘记数字和字母的ASCII码。
0~9 | 48~57 |
A~Z | 65~90 |
a~z | 97~122 |
- | 95 |
把两个字符串逐一比较,没有的输出(用数组标记是否输出过)
#include<iostream> #include<algorithm> #include<cstdio> #include<string.h> #define maxn 105 using namespace std; typedef long long ll; char s1[maxn],s2[maxn]; int vis[105]; int main() { char ts; int tmp; memset(vis,0,sizeof(vis)); scanf("%s",&s1); int l1=strlen(s1); scanf("%s",&s2); int l2=strlen(s2); int p=0; for(int i=0;i<l1;) { if(s1[i]==s2[p]) { i++; p++; } else { if(s1[i]>=97&&s1[i]<=122) ts=s1[i]-32; else ts=s1[i]; tmp=(int)ts; if(!vis[tmp]) { vis[tmp]=1; printf("%c",ts); } i++; } } printf("\n"); return 0; }