给定两个字符串 A 和 B,本题要求你输出 A+B,即两个字符串的并集。要求先输出 A,再输出 B,但重复的字符必须被剔除。
输入格式:
输入在两行中分别给出 A 和 B,均为长度不超过 106的、由可见 ASCII 字符 (即码值为32~126)和空格组成的、由回车标识结束的非空字符串。
输出格式:
在一行中输出题面要求的 A 和 B 的和。
输入样例:
This is a sample test
to show you_How it works
输出样例:
This ampletowyu_Hrk
易错点分析:这里如果使用gets函数的话最后的两个测试点会报错,所以我使用了getchar去一个字符一个字符的接,然后再用一个数组记录该ASCII码值有没有出现,出现则置1.
#include<stdio.h>
int main()
{
char temp[300] = {};
char resu[1000] = {};
char ch = 0;
int index =0;
for(ch = getchar(); '\n' != ch;ch = getchar())
{
if(0 == temp[ch])
{
resu[index++] = ch;
temp[ch]++;
}
}
for(ch = getchar(); '\n' != ch;ch = getchar())
{
if(0 == temp[ch])
{
resu[index++] = ch;
temp[ch]++;
}
}
temp[index] = '\0';
printf("%s\n",resu);
return 0;
}