结对编程__词频统计

搭档:施蓓蓓

源码:Github

贡献比例:50%

结对编程照片:



1、要求

    基于作业3的结果,读取一个较小的文本文件A_Tale_of_Two_Cities.txt,统计该文件中的单词的频率,并将统计结果输出到当前目录下的 Result1.txt 文件

2、主程序

void  main(void)

{
    char b[30], Str[30000];//定义单词数组,字符串数组
    ifstream infile("A_Tale_of_Two_Cities.txt"); //读入文件流,将文件直接放在同目录下
    if (!infile)
    {
        cout << "不能打开文件";
    }
    while (!infile.eof())
    {
        infile.getline(Str, 30000);
    }
    infile.close();

    int i = 0, m = 1, k = 0, flag = 0, x = 0;

    Str[x - 1] = ‘\0‘;
    x = 0;
    while (Str[x]){
        if (‘A‘ <= Str[x] && Str[x] <= ‘Z‘ || ‘a‘ <= Str[x] && Str[x] <= ‘z‘) {//判断是否是单词
            b[i++] = Str[x];//如果是的话将字符放到单词数组中

            flag = 1;
        }
        else if (flag){
            b[i] = ‘\0‘;
            flag = m = 0;
            for (i = 0; i < k; i++){
                if (strcmp(b, w[i].c) == 0){//比较单词是否相同
                    m = 1;
                    break;
                }
            }
            if (!m){
                w[k].n = 1;
                strcpy_s(w[k++].c, b);//不相同就保存
            }
            else w[i].n++;//相同,出现次数加1
            i = 0;
        }
        x++;
    }
    ofstream outfile("Result.txt");
    for (i = 0; i < k; i++)
        outfile << w[i].c << "   " << w[i].n << endl;//依次输出单词结构中的单词和个数到文件中
    cout << endl;
}

 

因为题目是基于作业3的,这次作业的重点对于我来说是文件流,文件流以前我用的不多,更不要说还是输出到指定文件里。我是直接把文件放到程序同文件夹里的,感觉还蛮好用的

3、结对体验

  这次结对的搭档是我的一个舍友,因此前期的摩擦不是很多。一开始的问题就是用谁的作业3和用谁的开发工具,经过一点讨论才有的结果。还有就是关于文件流的用法,我们都有一些个人的看法,后来还是在网上搜索了下用法,才有这最后的版本。

  说到底,结对编程是比自己一个人单做是有效率的,但是没有一个人编程在时间和细节方面更自由,还算是一次顺利的合作吧。

时间: 2024-10-04 02:31:46

结对编程__词频统计的相关文章

第二周结对编程作业——词频统计

本周作业是结对编写一个词频统计的程序,我们组是我(欧阳思琪)和贺晋飞同学共同完成这项任务.在仔细阅读了要求之后,我们组对程序编程进行了讨论.由于语言可以不必局限于要求中的C.C++,我们便考虑JAVA或python,两者各有优缺点,JAVA写起来比较繁重,而基于以往用python处理NLP相关项目的经验觉得python较为简单,但觉得在简单要求下,使用JAVA的运行速度明显更快,所以我们选择使用JAVA来完成本次作业. 分工:欧阳思琪 代码编写与博客编写 贺晋飞   代码审查与代码测试 实际:由

第二次结对编程-字词短语统计

第二次结对编程项目总结 第二次结对项目(词频统计要求网址): https://www.cnblogs.com/xinz/archive/2011/11/27/2265000.html 项目网址: https://github.com/QishenDatui/WordFrequency 基本要求 详细要求位于这里. 简要概括:根据输入的命令行参数,对文本中的字符进行对应的统计,例如使用-c命令统计字符出现次数,利用-f统计单词出现次数等等.项目一共分为5个步骤,4个必做项和一个附加项.分别为统计字

Hive简单编程实践-词频统计

一.使用MapReduce的方式进行词频统计 (1)在hadoop根目录下创建input输入文件夹,这和在HDFS用户目录下创建input文件夹是两件不同的事情. mkdir input (2)在input文件夹中创建两个测试文件file1.txt和file2.txt. echo "hello world" > file1.txt echo "hello hadoop" > file2.txt 知识点延伸: echo " hello world

结对作业4词频统计

结对对象:谢小山   博客:http://home.cnblogs.com/u/898254/ github账号:https://github.com/hjs12 http://www.cnblogs.com/xiexiaoshan123/ 贡献比例:50%:50% // ConsoleApplication2.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" #include<iostream> #include<fstream

软件工程网络15专业结对编程

结对编程作业总览 项目成员: 黄俊麟 201521123022 郑子杰 201521123021 项目码云地址: https://gitee.com/paitouzi/pair_programming/tree/master 具体项目分析: 1.需求分析 本次结对编程,我们自己新编写了一个计算器程序,能够实现简单的加减乘除运算. 在结对编程的分工中,我所负责的任务如下: 初始化业务逻辑. 开方.正负.清零.退格.数字内容输入拼接,输出结果的实现. 四则运算算法的实现. 每个按钮返回对应的业务(每

结对编程第4小组-词频统计

(项目源代码路径:https://github.com/miaozhongfeng/PairProject2018.git) 一.PSP表格预估时间花费 PSP2.1 Personal Software Process Stages 预估耗时(分钟) 实际耗时(分钟) Planning 计划     · Estimate · 估计这个任务需要多少时间 30 30 Development 开发     · Analysis · 需求分析 (包括学习新技术) 30 30 · Design Spec

作业4:结对编程—词频统计

结对对象:石莉静 博客地址:http://www.cnblogs.com/shilijing/ Github地址:https://github.com/cchenhui/-4 贡献比例:1:1 结对编程照片: [必做 2] 读取小文本文件A_Tale_of_Two_Cities.txt 或者 大文本文件Gone_with_the_wind.txt,统计某一指定单词在该文本文件中出现的频率. 源程序: #include <iostream> #include <vector> #in

结对编程——词频统计 2

[必做 2] 读取小文本文件A_Tale_of_Two_Cities.txt 或者 大文本文件Gone_with_the_wind.txt,统计某一指定单词在该文本文件中出现的频率. 命令行格式: 提示符> Myapp.exe -f filename.txt -w word (PS:C++ 程序,Java 程序输出方式类似) 解释: 选项 -f 表示打开某一文件(filename.txt) 选项 -w 表示统计其后单词(word)在打开的文件(filename.txt)中的频率 结对伙伴:陈晖,

结对&amp;词频统计

结对编程 Pathner 濮成林(博客:http://www.cnblogs.com/charliePU/) 1.词频统计 环境依赖: 开发环境.myeclipse 2013, jdk1.7.0_04, echart.mini.js, tomcat 7.0. 运行环境.tomcat 7.0, jre7. 对濮成林词频统计进行需求的再讨论 确定输入:TXT格式纯英文文档大小不超过10M 分析结果排序:按顺序输出前N个 结果显示内容:显示内容在原有基础上增加排序结果显示.增加文章标题显示.修改横坐标