一个C语言程序,单词测试系统需要设计哪些方面

一个C语言程序,单词测试系统需要设计哪些方面,第1张

编程语言:C语言

程序目标:从一个txt文件中读取字符,识别其中每一个英文单词。

数据结构:链表,结构体

基本思路:最外层循环判断条件是文件中有数据读取,每次从文件中读取一个字符,判断是否是字母,每次读取到空格就说明一个单词的结束,然后把得到的单词插入到链表中,链表中每一个节点存储

一个单词,并记录该单词的频数,插入规则是,有该单词,则增加频数,否则插入到链表。最后从链表中选取频数最大的是个节点输出。分析结论:第一张图显示的CPU消耗时间主要是在前面部分,这跟我的代码是相对应的,在主函数的调用过程中,前面部分是读取数据,构建相关数据结构,因而资源消耗大。第二张图显示,creatlist

函数中分为子函数和不包含子函数对资源的消耗,不包含子函数的独占样本百分百要多,说明creatlist函数在算法上比creatnode函数要复杂一些,这也跟处理该问题的主体算法思路有关。第三章图显

示的creatlist函数的消耗资源最多,其次是库函数strcmp,因为creatlist函数在构建的时候,要判断是插入节点还是直接增加某个节点的频数,因而需要搜素链表,所以要消耗很多资源,在搜索过程

工具/材料

Eclipse

01

首先我们来新建一个Java项目,如下图所示,选择New下面的Java Project

02

然后在项目下面建一个Package包,如下图所示,Package包主要是为了程序结构明晰

03

在d出的如下图所示的Package包d出窗口,我们给包起一个名字,如下图所示

04

然后我们在项目下面新建一个Java的类,如下图所示,类是建在package下面的

05

然后在新建的类中,我们输入如下的方法,主要是加减乘除的功能

06

然后我们右键单击项目,选择Build Path下面的Add Libraries选项,如下图所示

07

在d出的Add Library界面我们选择Junit,然后一路下一步即可,如下图所示

08

接下来就是新建一个测试类,如下图所示,给测试类起好名字

09

然后书写测试类的代码,如下图所示,利用junit中的assetEquals方法进行加法测试,如下图所示

10

最后我们运行程序,你会看到如下的提示,证明测试通过了

单元测试是开发者编写的一小段代码,用于检验被测代码的一个很小的、很明确的功能是否正确。通常而言,一个单元测试是用于判断某个特定条件(或者场景)下某个特定函数的行为。例如,你可能把一个很大的值放入一个有序list 中去,然后确认该值出现在list 的尾部。或者,你可能会从字符串中删除匹配某种模式的字符,然后确认字符串确实不再包含这些字符了。

执行单元测试,是为了证明某段代码的行为确实和开发者所期望的一致。

为什么需要单元测试

当编写项目的时刻,如果我们假设底层的代码是正确无误的,那么先是高层代码中使用了底层代码;然后这些高层代码又被更高层的代码所使用,如此往复。当基本的底层代码不再可靠时,那么必需的改动就无法只局限在底层。虽然你可以修正底层的问题,但是这些对底层代码的修改必然会影响到高层代码。于是,一个对底层代码的修正,可能会导致对几乎所有代码的一连串改动,从而使修改越来越多,也越来越复杂。从而使整个项目也以失败告终。

单元测试针对程序模块,进行正确性检验的测试。其目的在于发现各模块内部可能存在的各种差错。单元测试需要从程序的内部结构出发设计测试用例。多个模块可以平行地独立进行单元测试。

以上就是关于一个C语言程序,单词测试系统需要设计哪些方面全部的内容,包括:一个C语言程序,单词测试系统需要设计哪些方面、如何应用Junit单元测试、软件开发里面单元测试是用来做什么的等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/9703637.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-01
下一篇 2023-05-01

发表评论

登录后才能评论

评论列表(0条)

保存