| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1378 人关注过本帖
标题:帮忙检查一下有没有编译错误
只看楼主 加入收藏
根根本根
Rank: 2
来 自:上海
等 级:论坛游民
帖 子:64
专家分:15
注 册:2018-3-19
结帖率:62.5%
收藏
已结贴  问题点数:20 回复次数:4 
帮忙检查一下有没有编译错误
#include<bits/stdc++.h>
using namespace std;
int main() {
    string s,s2;
    getline(cin,s);
    getline(cin,s2);
    while(s.find(' ')!=string::npos){
        s.erase(s.find(' '),1);
    }
    while(s2.find(' ')!=string::npos){
        s2.erase(s2.find(' '),1);
    }
    cout<<s<<endl<<s2<<endl;
    for(int i=0; i<s.size(); i++) {
        s[i]=toupper(s[i]);
    }
    for(int i=0; i<s2.size(); i++) {
        s2[i]=toupper(s2[i]);
    }
    if(s==s2&&s.size()==s2.size()){
        cout<<"YES";
    }
    else{
        cout<<"NO";
    }
    return 0;
}
搜索更多相关主题的帖子: 检查 int find cout size 
2018-05-31 18:50
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9025
专家分:54030
注 册:2011-1-18
收藏
得分:20 
C++中已有的函数要用起来,不要重复造轮子
比如 删除空格 s1.erase( remove(s1.begin(),s1.end(),' '), s1.end() );
比如 删除空白字符 s1.erase( remove_if(s1.begin(),s1.end(),isspace), s1.end() );
比如 小写转成大写 std::transform( s1.begin(), s1.end(), s1.begin(), toupper );

以上皆小事,大事是 你这道题根本不需要去修改string,你没有想到正确的算法。
程序代码:
#include <string>
#include <algorithm>

bool equal_ignore_space_case( const std::string& a, const std::string& b )
{
    size_t i=0, j=0;
    for( ; i=a.find_first_not_of(" ",i), j=b.find_first_not_of(" ",j)
         , i!=std::string::npos && j!=std::string::npos && toupper(a[i])==toupper(b[j])
         ; ++i,++j );
    return i==std::string::npos && j==std::string::npos;
}

#include <iostream>
using namespace std;

int main( void )
{
    string s1, s2;
    getline( cin, s1 );
    getline( cin, s2 );
    cout << (equal_ignore_space_case(s1,s2)?"YES":"NO") << endl;
}

2018-06-01 09:17
根根本根
Rank: 2
来 自:上海
等 级:论坛游民
帖 子:64
专家分:15
注 册:2018-3-19
收藏
得分:0 
回复 2楼 rjsp
谢谢
2018-06-21 15:21
cstdio
Rank: 5Rank: 5
来 自:上海市静安区
等 级:贵宾
威 望:15
帖 子:97
专家分:44
注 册:2018-5-30
收藏
得分:0 
#include<bits/stdc++.h>报错没有该文件

import random
i=random.randint(100,100000)
print i
2018-07-18 14:20
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9025
专家分:54030
注 册:2011-1-18
收藏
得分:0 
以下是引用cstdio在2018-7-18 14:20:09的发言:

#include报错没有该文件
非标准,而是 g++ 特有的
所以每次看到有人用 #include<bits/stdc++.h> 都像吞了苍蝇一样恶心
2018-07-18 14:34
快速回复:帮忙检查一下有没有编译错误
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016061 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved