一开始的题意就没有完全弄懂
+号的意思是第二行所有大写的都不输出
总是有1分过不了
因为很有可能没有坏键输入
此时scanf和cin就不能用了
可以用getline
get(不知道为何pat总显示编译错误)
但getline是string型的
#include<cstdio>
#include<cstring>
#include<iostream>
using namespace std;
string str="";
bool HashTable[256];
int main()
{
memset(HashTable,true,sizeof(HashTable));
getline(cin,str);
//getchar();
//gets(s1);
//gets(s2);
int len=str.length();
//int len2=strlen(s2);
for(int i=0;i<len;i++)
{
if(str[i]>='A'&&str[i]<='Z')
{
str[i]=str[i]-'A'+'a';
}
HashTable[str[i]]=false;
}
//getchar();
//scanf("%s",str);
getline(cin,str);
len=str.length();
for(int i=0;i<len;i++)
{
if(str[i]>='A'&&str[i]<='Z')
{
int low=str[i]-'A'+'a';
if(HashTable[low]==true&&HashTable['+']==true)
{
printf("%c",str[i]);
}
}
else if(HashTable[str[i]]==true)
{
printf("%c",str[i]);
}
}
printf("\n");
return 0;
}