Exercise 1测试

此篇博客旨在测试Exercise 1,发现其中问题并解决。

首先,我们使用codeblocks对Exercise 1进行编译。结果如下:

可以发现经编译后的Exercise 1并无编译错误,只有两个warning,所以我们先不管warning内容,测试其功能

所以,我们来分析代码部分:

char buff[10];此行代码定义了一个10位的字符数组,所以我们要在测试时考虑输入内容:

1.为空

2.不为空但是小于十个字符

3.十个字符

4.大于十个字符

memset(buff,0,sizeof(buff));此行代码将buff指向的内存中设为空,即将buff数组设为空。

gets(buff);gets从标准输入设备读字符串函数。可以无限读取,不会判断上限,以回车结束读取。此时就要考虑是否会溢出的现象。

printf("\n The buffer entered is [%s]\n",buff);打印buff中的内容到屏幕上。

此时我们准备几个测试用例:

1.null

2.a

[email protected]

[email protected]#$456

5.123456789123

分别进行测试

1.测试结果如下

无问题

2.测试结果如下

无问题

3.测试结果如下

无问题

4.测试结果如下

无问题

5.测试结果如下

发生报错无法运行 我们可以发现原因为数组溢出,根据实际情况我们可以选择是使用动态数组,还是规定输入字符位数解决问题

此时我们再回头看看两个warning

此为隐式申明函数的警告,索命memset这个函数没用在包含的头文件中进行声明,解决办法为添加头文件string.h

时间: 2024-08-06 20:56:39

Exercise 1测试的相关文章

如何成为以为Openstack贡献者学习笔记(备忘,待整理)

是一篇相对杂乱的笔记,有待整理 如何成为以为Openstack贡献者 Openstack只是一个技术框架 Openstack基金会 技术委员会 代码管理.质量把握 懂事委员会 决定了Openstack未来发展的方向 铂金会员.黄金会员.个人会员 用户委员会 收集不同的用户对Openstack的需求 开发流程.版本发布管理 开发者.用户.社区生态体系管理 收集用户需求 商标管理 社区事务管理(summit meetup ) 法律问题 Openstack贡献者需知 注册 https://launch

[Exercise]用softmax Regression测试MNIST数据集

MNIST是一套对手写数字进行识别的数据集:http://yann.lecun.com/exdb/mnist/ MNIST的数据结构官网上已给出,挺奇葩的-.-,所以第一件事是把数据整理出来 我写了个脚本帮我整理,输出的是一坨文本文件, [其中image是用灰度矩阵表示,每个像素1字节,每张图28x28 pixels 1 #include <iostream> 2 #include <cstring> 3 #include <cstdio> 4 #include <

Stanford coursera Andrew Ng 机器学习课程编程作业(Exercise 2)及总结

Exercise 1:Linear Regression---实现一个线性回归 关于如何实现一个线性回归,请参考:http://www.cnblogs.com/hapjin/p/6079012.html Exercise 2:Logistic Regression---实现一个逻辑回归 问题描述:用逻辑回归根据学生的考试成绩来判断该学生是否可以入学. 这里的训练数据(training instance)是学生的两次考试成绩,以及TA是否能够入学的决定(y=0表示成绩不合格,不予录取:y=1表示录

单元测试101:你测试你的javascript吗?

    作者:littlechang ,发布于2012-11-15 ,来源:CSDN   你当然是测试你的代码.没有写出相当数量的代码后不运行一下就直接丢到产品中.在本文中我对你是如何测试的进行质疑.如果你不是已经尽可能的多的自动化测试,为生产力和信息提升做好准备吧. 一句话的警告:我将在本文中谈论单元测试和测试驱动开发(TDD),如果你已经得出结论:下面的任何理由对你都不适合,那么请继续阅读,或者至少阅读从我为什么要关心?到最后: 我使用一个库,如jQuery,它保证我的代码正确的工作 测试是

Web项目中JSP页面的一种调试方法与出现的问题 -- SpringMVC架构测试

在前端开发中,尤其是MVC架构多人开发,负责前端的童鞋总是需要做静态页面,再和后台连接前无法使用变量如EL表达式等测试功能,所以本人引入了一个模板jsp数据测试专用文件,专门配置所有的变量,然后在待测试的jsp页面中引入进去,就可以测试了,与后台整合时只需要删除include标签即可.(由于本人是初学者,若有什么更高明快捷的测试方法,,,望勿喷<( ̄︶ ̄)[GO!]) 以下是项目结构(略复杂,SpringMVC架构,取所需即可),通过redirect.jsp重定向到/jsp/pages /exe

Java反序列化测试

前言:有没有想过,如何将对象进行“加密”后写入磁盘?序列化帮你实现! 1.概念 序列化 (Serialization)将对象的状态信息转换为可以存储或传输的形式的过程.在序列化期间,对象将其当前状态写入到临时或持久性存储区.以后,可以通过从存储区中读取或反序列化对象的状态,重新创建该对象. 2.反序列化Java实验 --测试的实体类-- 1 package exercise; 2 3 import java.io.Serializable; 4 5 public class Person imp

关于课堂上Exercise#1的讨论

Software Testing_1b-rev page17 Exercise#1 代码内容: #include <stdio.h> int main(void) { char buff[10]; memset(buff,0,sizeof(buff)); gets(buff); printf(“\n The buffer entered is [%s]\n”,buff); return 0; } 这段代码是否存在问题... 据我所猜,老师布置的这个作业中没有存在代码的语法问题.那么,问题应该就

[fw]linux测试工程介绍(Linux Test Project)

http://ltp.sourceforge.net/ Linux Test Project, 后台很硬,由SGI? 发起, IBM维护,所以质量有保障. 里面介绍了很多工具,对于一般的基准测试应该是真够用了,关键是开发源码, 可以根据自己工程的需求,自己定制修改,本人由于工作原因阅读了(lmbench:lmdd , dbench 文件系统方面的测试),觉得非常不错 http://www.bitmover.com/lmbench/ http://www.samba.org/ftp/tridge/

安卓CTS官方文档之兼容性测试套件简介

官方英文文档原文:https://source.android.com/compatibility/cts-intro.html Compatibility Test Suite 兼容性测试套件 How does the CTS work? CTS是如何工作的? Figure 1. How to use CTS 图1. CTS使用流程 The CTS is an automated testing harness that includes two major software componen