判断两个由大小写字母和空格组成的字符串在忽略大小写,且忽略空格后是否相等。
Input两行,每行包含一个字符串。Output若两个字符串相等,输出YES,否则输出NO。Sample Inputa A bb BB ccc CCC Aa BBbb CCCcccSample Output
YES
#include <stdio.h>
#include <string.h>
void fun(char s[])
{
int i, j;
for(i=j=0; s[j]!='\0'; j++)
{
if(s[j] != ' ')
s[i++] = s[j];
}
s[i] = '\0';
}
void cha(char p[])
{
int i;
for(i=0; p[i]!='\0'; i++)
{
if(p[i] >= 'A' && p[i] <= 'Z')
p[i] = p[i]+32;
}
}
int main()
{
char a[100], b[100];
int len, i, j;
gets(a);
gets(b);
fun(a);
fun(b);
cha(a);
cha(b);
for(i=0; a[i]||b[i]; i++)
{
if(a[i] != b[i])
break;
}
if(a[i] == b[i])
printf("YES\n");
else
printf("NO\n");
return 0;
}
#include<stdio.h>
#include<ctype.h>
#include<string.h>
int main()
{
char s1[128], s2[128];
int i,j;
gets(s1);
for(i=0, j=0; s1[i]; i++)
if(s1[i] == ' ')
;
else if(isupper(s1[i]))
s1[j++] = tolower(s1[i]);
else s1[j++] = s1[i];
s1[j] = '\0';
gets(s2);
for(i=0, j=0; s2[i]; i++)
if(s2[i] == ' ')
;
else if(isupper(s2[i]))
s2[j++] = tolower(s2[i]);
else s2[j++] = s2[i];
s2[j] = '\0';
if(strcmp(s1, s2))
printf("NO\n");
else printf("YES\n");
return 0;
}