weixin_43396541 2018-10-25 09:26 采纳率: 0%
浏览 412

有没有大佬解释一下为什么wa了

判断两个由大小写字母和空格组成的字符串在忽略大小写和压缩掉空格后是否相等

Input
输入包含多组数据,每组数据包含两个字符串(长度小于100)

Output
对于每组数据,如果相等输出“YES”,否则输出“NO”。

Sample Input
a A bb BB ccc CCC
Aa BBbb CCCccc
a dfadf fasdf
adasddfsfsaf
Sample Output
YES
NO
代码如下:
#include
#include
char a[1000],b[1000],c[1000],d[1000];
int main()
{
int i,j,k,m,n;
scanf("%d",&n);
getchar();
while(n--)
{
k=0;m=0;
gets(a);
gets(b);
for(i=0; i<strlen(a); i++)
{
if(a[i]!=' ')
{
c[k]=a[i];
if('A'<=c[k]&&c[k]<='Z')c[k]=c[k]+32;
k++;
}

}

printf("%s\n",c);
for(i=0; i<strlen(b); i++)
{
if(b[i]!=' ')
{
d[m]=b[i];
if('A'<=d[m]&&d[m]<='Z')d[m]=d[m]+32;
m++;
}

    }
    printf("%s\n",d);       
    if(strcmp(c,d)==0)
    printf("YES\n");
    else
    printf("NO\n");
}
return 0;

}

  • 写回答

1条回答 默认 最新

  • Italink 2018-10-25 11:40
    关注

    忽略空格,就把空格都去掉,

    忽略大小写,你这里是把全部改为小写(ASCII码+32)

    
    #include<iostream>
    using namespace std;
    char a[1000], b[1000], c[1000], d[1000];
    int main()
    {
        int i, j, k, m, n;
        scanf("%d", &n);
        getchar();
        while (n--)
        {
            k = 0; m = 0;
            gets_s(a);
            gets_s(b);
            for (i = 0; i<strlen(a); i++)
            {
                if (a[i] != ' ')                //将非空的字符复制到另一个字符串中
                {
                    c[k] = a[i];
                    if ('A' <= c[k] && c[k] <= 'Z')c[k] = c[k] + 32;  //将大写转为小写
                    k++;
                }
    
            }
            printf("%s\n", c);
            for (i = 0; i<strlen(b); i++)
            {
                if (b[i] != ' ')  
                {
                    d[m] = b[i];
                    if ('A' <= d[m] && d[m] <= 'Z')d[m] = d[m] + 32;
                    m++;
                }
            }
            printf("%s\n", d);
            if (strcmp(c, d) == 0)
                printf("YES\n");
            else
                printf("NO\n");
        }
        return 0;
    }
    
    
    评论

报告相同问题?

悬赏问题

  • ¥15 求chat4.0解答一道线性规划题,用lingo编程运行,第一问要求写出数学模型和lingo语言编程模型,第二问第三问解答就行,我的ddl要到了谁来求了
  • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
  • ¥50 树莓派安卓APK系统签名
  • ¥15 maple软件,用solve求反函数出现rootof,怎么办?
  • ¥65 汇编语言除法溢出问题
  • ¥15 Visual Studio问题
  • ¥20 求一个html代码,有偿
  • ¥100 关于使用MATLAB中copularnd函数的问题
  • ¥20 在虚拟机的pycharm上
  • ¥15 jupyterthemes 设置完毕后没有效果