| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 914 人关注过本帖
标题:初学者求教,判断文件单词数的问题
只看楼主 加入收藏
dx2880
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2007-5-24
收藏
 问题点数:0 回复次数:3 
初学者求教,判断文件单词数的问题
假设文件中的词为由一个或多个空白字符(SPACE,TAB,NEWLINE)分隔开的字符串。编写一个程序,计算输入文件(cin)的单词数。
原题就是这样的,麻烦哪位大大帮忙写一下
搜索更多相关主题的帖子: 单词 文件 判断 
2008-04-02 21:23
sunkaidong
Rank: 4
来 自:南京师范大学
等 级:贵宾
威 望:12
帖 子:4496
专家分:141
注 册:2006-12-28
收藏
得分:0 
#include <string>
#include <map>
#include <iostream>
using namespace std;
int main()
{
    char str[500];
    char *strToken;
    char strDelimit[] = " ,.?!";
    int wordCount = 0;
    map<string, int> words;
    map<string, int>::iterator iter;
    cout << "Please input a passage:" << endl;
    cin.getline( str, sizeof(str) );

    strToken = strtok( str, strDelimit );
    while ( strToken != NULL )
    {
        iter = words.find(strToken );
        if ( iter == words.end() )
        {
                words.insert( pair<string, int>(strToken, 1 ) );
        }
        else
        {
        iter->second++;
        }
    ++wordCount;
    strToken = strtok( NULL, strDelimit );
    }

for ( iter=words.begin(); iter!=words.end(); ++iter )
{
      cout << "Words begin with " << iter->first << ": " << iter->second << endl;
}
cout << "Total words: " << wordCount << endl;
}

学习需要安静。。海盗要重新来过。。
2008-04-02 22:34
xjywc
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2008-1-11
收藏
得分:0 
这是我原来写的判断字符串个数的程序,可能不是很符合,但是你自己看着修改一下就可以了

#include <iostream>
#include <vector>
#include <string>
using namespace std;
struct Pair
{
    string name;
    int count;
};
vector<Pair>pairs;
int& new_pairs(const string& s)
{
    for (int i=0;i<pairs.size();i++ )
    {
        if (s==pairs[i].name)
        {
            return pairs[i].count;    
        }
    }
    Pair p={s,0};
    pairs.push_back(p);
    return pairs[pairs.size()-1].count;
}
int main()
{
    string s;
    while(cin>>s)
    {   if (s=="quit")
          break;
        new_pairs(s)++;
    }
    for (vector<Pair>::const_iterator p=pairs.begin() ; p!=pairs.end() ; ++p)
    {
        cout<<p->name<<":"<<p->count<<"\n";
    }
    system("pause");
}

dev-c++下编译通过
2008-04-04 14:20
sunkaidong
Rank: 4
来 自:南京师范大学
等 级:贵宾
威 望:12
帖 子:4496
专家分:141
注 册:2006-12-28
收藏
得分:0 
我的已经可以统计了..而且可以统计相同的单词个数..

学习需要安静。。海盗要重新来过。。
2008-04-04 18:06
快速回复:初学者求教,判断文件单词数的问题
数据加载中...
 
   



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

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