| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1635 人关注过本帖
标题:[求助]一道编程题(统计字符)
取消只看楼主 加入收藏
pingscorpio
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2006-3-29
收藏
 问题点数:0 回复次数:4 
[求助]一道编程题(统计字符)

统计输入文件中出现的不同单词个数以及每个单词出现的频率,并且将这些单词按照词典排列顺序输出到文件中

输入:
以文件形式记录程序中所需要的数据。
样例输入文件(word.in)
This is a book.Its name is "C Programming".

输出:
结果放在一个文件夹中,该文件第一行为不同的单词的个数,从第二行开始则为每一个单词和其相应出现的频率,单词与频率数之间用空格符分割,单词需按字典顺序排列。

样例输出文件:
(word.out)
9
a 1
book 1
c 1
is 1
its 1
name 1
programming 1
this 1


谢谢

搜索更多相关主题的帖子: 字符 统计 
2006-03-29 19:05
pingscorpio
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2006-3-29
收藏
得分:0 

我是不太会如何输入数据,用字符串还是别的?如何判断字符结束?
谢谢

2006-03-29 21:58
pingscorpio
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2006-3-29
收藏
得分:0 

为什么每次都弹出windows对话框显示错误啊?

2006-03-31 22:49
pingscorpio
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2006-3-29
收藏
得分:0 

#include <iostream>
#include <string>
#include <map>
#include <vector>
#include <algorithm>
#include <fstream>


using namespace std;

bool ischar(char ch)
{
if ( (ch >= 'a' && ch <= 'z') || (ch >= 'A' && ch <= 'Z') )
return true;
return false;
}

int main()
{
vector<string> word;
ifstream fin("word.in");

if ( !fin )
{
cerr << "oops! unable to open file "<< endl;
}

char ch;
while ( fin )
{
string tmp;
ch = fin.get();
if (ischar(ch))
{
while( ischar(ch) )
{

if ( isupper(ch) )
{
ch = tolower(ch);
}
tmp += ch;
ch = fin.get();
}
word.push_back(tmp);
}
}

const long len = word.size();
/*for (int j = 0; j < len; ++j)
cout << word[j] << ';';*/
fin.close();

map<string,int> count;
for(int i = 0; i < len; ++i)
count[word[i]]++;

map<string,int>::iterator iter;

ofstream fout("word.out");
if ( !fout )
{
cerr << "oops! unable to open file "<< endl;
}
fout << len << endl;
for (iter = count.begin(); iter != count.end(); iter++)
fout << iter->first << " " << iter->second << endl;
return 0;
}

2006-09-01 00:07
pingscorpio
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2006-3-29
收藏
得分:0 

啊,终于弄出来了

2006-09-01 00:07
快速回复:[求助]一道编程题(统计字符)
数据加载中...
 
   



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

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