标签:process windows 框架 运行程序 asc 程序 接下来 ble 个数
程序可读入任意英文文本文件,该文件中英文词数大于等于1个。
程序需要很壮健,能读取容纳英文原版《哈利波特》10万词以上的文章。
指定单词词频统计功能:用户可输入从该文本中想要查找词频的一个或任意多个英文单词,运行程序的统计功能可显示对应单词在文本中出现的次数和柱状图。
高频词统计功能:用户从键盘输入高频词输出的个数k,运行程序统计功能,可按文本中词频数降序显示前k个单词的词频及单词。
统计该文本所有单词数量及词频数,并能将单词及词频数按字典顺序输出到文件result.txt。
测试机环境:Windows
开发环境:CFree5
利用指针功能
打开txt文件,若打开成功则返回文件起始位置给p指针
利用flag做标志统计每个单词出现的频率
将单词按字典顺序排序,即通过比较ascii值来进行冒泡排序
英文文本:
开发平台:
运行界面:
检查文件结束:
while(!feof(p))
{
for(j=0;j<20;j++)
{
? temp[j]=fgetc(p);
? if(temp[j]==' '||temp[j]==','||temp[j]=='.'||temp[j]=='!'||temp[j]=='?')
? {
? temp[j]='\0';
? strcpy(s[b].w,temp);
? b++;
? break;
? }
? }
}
统计单词出现频率:
void pv()
{
int j,k,flag=1;
? for(j=0;j<b;j++)
? {
? for(k=0;k<j;k++)
? {
? if(strcmp(s[j].w,s[k].w)==0)
? {
? flag=0;
? break;
? }
? else
? flag=1;
? }
? while(flag)
? {
? for(k=j;k<b;k++)
? {
? if(strcmp(s[k].w,s[j].w)==0)
? s[j].num++;
? }
? flag=0;
? }
? }
}
将单词按字典顺序排序:
void px()
{
int j,k,c;
char temp[20];
for(j=0;j<b-1;j++)
{
? c=j;
? for(k=j+1;k<b;k++)
? {
? if(strcmp(s[c].w,s[k].w)>0)
? c=k;
? if(c!=j)
? {
? strcpy(temp,s[c].w);
? strcpy(s[c].w,s[j].w);
? strcpy(s[j].w,temp);
? }
? }
}
}
? 这应该是目前为止做的最难受的一次实验,对于在语言缺乏和算法短板上的缺陷体现的淋漓尽致,自己的问题还是需要自己解决,没什么救世主,上网广泛浏览现有程序代码,借鉴其中的部分程序源码,主体框架采用C语言,最后又加入C++部分代码实现图形化用户界面,最终实现要求中的个别功能。半路出家的自己与他人的差距心里甚是明了,以后的学习该怎么进行才是接下来主要攻克的难题。
PSP2.1 | 任务内容 | 计划共完成需要 的时间(min) |
实际完成需要 的时间(min) |
---|---|---|---|
Planning | 计划 | 10 | 8 |
Estimate | 估计这个任务需要多少 时间,并规划大致工作步骤 |
9 | 8 |
Development | 开发 | 100 | 120 |
Analysis | 需求分析 (包括学习新技术) | 10 | 15 |
Design Spec | 生成设计文档 | 5 | 5 |
Design Review | 设计复审 (和同学审核设计文档) | 4 | 5 |
Coding Standard | 代码规范 (为目前的开发制定合适的规范) | 3 | 3 |
Design | 具体设计 | 15 | 20 |
Coding | 具体编码 | 60 | 90 |
Code Review | 代码复审 | 10 | 10 |
Test | 测试(自我测试,修改代码,提交修改) | 20 | 30 |
Reporting | 报告 | 10 | 10 |
Test Report | 测试报告 | 5 | 4 |
Size Measurement | 计算工作量 | 5 | 3 |
Postmortem & Process Improvement Plan | 事后总结 ,并提出过程改进计划 | 5 | 5 |
最重要的是一点要学会至少一门语言,否则寸步难行!
Github的仓库主页的链接地址:Github链接
标签:process windows 框架 运行程序 asc 程序 接下来 ble 个数
原文地址:https://www.cnblogs.com/dingjiahui/p/10558999.html