1029 bool数组下标为字符 当下标为字符时,有两种可能: 1 以字符常量作为下标。如a['A'];表示'A'的ascii码对应的数组偏移量。在实际应用中不常见,但是从语法上来说是合法的。 2 字符本身为变量。如 int i; int a[100]; for(i = 0; i < 100; i ++) printf("%d\n", a[i]); 这里的a[i],下标就是i,本质上i是一个变量,访问的时候是根据变量值进行访问对应元素的。 题解 #include <bits/stdc++.h> using namespace std; int main() { string str1,str2; bool HashTable[128]={false}; cin>>str1>>str2; for(int i=0;i<str1.length();i++) { int j; char c1,c2; for(j=0;j<str2.length();j++) { c1=toupper(str1[i]); c2=toupper(str2[j]); if(c1==c2) break; } if(j==str2.length()&&HashTable[c1]==false){ printf("%c",c1); HashTable[c1]=true; } } return 0; }