首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

taodm((不能收CSDN社区短信息,请莫浪费精力)) 请进解决办法

2012-03-02 
taodm((不能收CSDN社区短信息,请莫浪费精力)) 请进你写的这个程序,遇到标点就有问题了。比如iamastudent.ia

taodm((不能收CSDN社区短信息,请莫浪费精力)) 请进
你写的这个程序,遇到标点就有问题了。

比如   i   am   a   student.i   am   want   to   be   a   teacher.

程序会把student.做为一个单词统计出来

怎么把标点替换成空格呢。我知道把一句话的标点替换换成空格,但是一篇以.txt存盘的文章,怎么替换呢。?麻烦给个程序,不胜感激!!!
#include   <iostream>
#include   <vector>
#include   <map>
#include   <fstream>
#include   <iterator>
#include   <cstdlib>

using   namespace   std;

int   main(int   argc,   char   *argv[])
{

    ifstream   input( "c:\\temp\\bignumber.h ");
    map <string,   int>   s_num;
    for   (istream_iterator <string>   iter(input);   iter   !=   istream_iterator <string> ();   ++iter)
    {
            s_num[*iter]   +=   1;
    }        
    multimap <int,   string>   num_s;    
    for   (map <string,   int> ::iterator   iter   =   s_num.begin();   iter   !=   s_num.end();   ++iter)
    {
            num_s.insert(make_pair(iter-> second,   iter-> first));
    }        
    int   i   =   0;  
    for   (multimap <int,   string> ::reverse_iterator   iter   =   num_s.rbegin();   (i   <   20)   &&   (iter   !=   num_s.rend());   ++i,   ++iter)
    {
            cout   < <   iter-> second   < <   "   "   < <   iter-> first   < <   "\r\n ";
    }
    cout   < <   endl;
    system( "PAUSE ");
    return   0;
}

[解决办法]
我建议你迎难而上,而不是老做1+1=2。

热点排行