代码规范以及单元测试项目
一、代码规范重写30道四则运算
/** 作者:程鹏远 题目:30道2年纪四则运算题目 */ #include <iostream.h> #include <stdlib.h> #include <conio.h> int main() {//初始化int a,b,c; int num1,num2;int num;int chufa;int k,jiange;int zhengchu;int j=0;int chengfa;int con;//请输入数的范围,中间用空格隔开:cout<<"请输入数的范围,中间用空格隔开:";cin>>num1>>num2;if(num1>num2){cout<<"第一个数应该小于第二个数,请重输:";cin>>num1>>num2;}//控制题目的个数,numcout<<"其输入要出多少道题目:";cin>>num;if(num>(4*(num2-num1)^2)){cout<<"您输入的题目数量太多,会造成重复,请重新输入数目:";cin>>num;}//打印格式cout<<"一行几道题,行间距是几,中间空格:";cin>>k>>jiange;if(jiange>=5||jiange<0){cout<<"您输入的间距太大或为负数,请重输:";cin>>jiange;}//是否要除法cout<<"是否要除法?是输入1,否输入0:";cin>>chufa;if(chufa==1){cout<<"是否要有余数,是输入1,否输0:";cin>>zhengchu;}//是否要乘法cout<<"是否要乘法,是输入1,否输入0:";cin>>chengfa;cout<<endl;for(int i=0;i<num;i++){ cout<<i+1<<"、"; a=(rand()%(num2-num1+1))+num1;b=(rand()%(num2-num1+1))+num1;if(chufa==1){if(chengfa==1){c=rand()%4;//0-3 }else{c=rand()%3;//0-2 }}else{if(chengfa==1){c=rand()%3+1;//1-3 }else{c=rand()%2+1;//1-2 }}switch (c){case 1:cout<<a<<"+"<<b<<"="<<"\t";break;case 2:if(a>b){cout<<a<<"-"<<b<<"="<<"\t";}else{cout<<b<<"-"<<a<<"="<<"\t";}break;case 3: cout<<a<<"*"<<b<<"="<<"\t";break;case 0://除法if(zhengchu==1)//有余数 {if(b==0){cout<<b<<"/"<<a<<"="<<"\t";}else{cout<<a<<"/"<<b<<"="<<"\t"; }}else{while((j<100000)&&(a!=0)&&(b!=0)&&(a%b==0)){cout<<a<<"/"<<b<<"="<<"\t";j++;}if((a!=0)&&(b!=0)&&(a%b==0)){cout<<a<<"/"<<b<<"="<<"\t";//i++; }else{int j=0;while(j<100000){a=(rand()%(num2-num1+1))+num1;b=(rand()%(num2-num1+1))+num1;if((a!=0)&&(b!=0)&&(a%b==0)){cout<<a<<"/"<<b<<"="<<"\t";//i++;j=100000;j++;}else{j++;}}} }break; } if((i+1)%k==0){cout<<endl;for(int m=0;m<jiange;m++){cout<<endl;}}}//继续吗?cout<<"继续吗?是输入1,否输入0:"<<endl;cin>>con;if(con==1){cout<<endl;main();}else{return 0;}getch();return 0; }
二、单元测试项目
编写相关测试程序:源代码如下:
/** 作者:程鹏远 题目:30道2年纪四则运算题目 */ #include <iostream.h> #include <stdlib.h> #include <conio.h> int main() {cout<<"请输入8个数据,分别表示num1,num2,num,k(一行几个),jiange,chufa,yushu,chengfa"<<endl;//测试模块int a[8];for(int n=0;n<8;n++){cin>>a[n];}//初始化int s,b,c; //int a[0],a[1];//int a[2];//int a[5];//int a[3],a[4];//int a[6];int j=0;//int a[7];int con;//请输入数的范围,中间用空格隔开://cout<<"请输入数的范围,中间用空格隔开:";//cin>>a[0]>>a[1];if(a[0]>a[1]){cout<<"第一个数应该小于第二个数,请重输:";cin>>a[0]>>a[1];}//控制题目的个数,a[2]//cout<<"其输入要出多少道题目:";//cin>>a[2];if(a[2]>(4*(a[1]-a[0])^2)){cout<<"您输入的题目数量太多,会造成重复,请重新输入数目:";cin>>a[2];}else if(a[2]<=0){cout<<"请输入大于0的题目数:";cin>>a[2];}//打印格式//cout<<"一行几道题,行间距是几,中间空格:";//cin>>a[3]>>a[4];if(a[4]>=5){cout<<"您输入的间距太大,请重输:";cin>>a[4];}if(a[4]<0){cout<<"您输入的间距为负数,请重输:";cin>>a[4];}//是否要除法//cout<<"是否要除法?是输入1,否输入0:";//cin>>a[5];//cout<<"是否要有余数,是输入1,否输0:";//cin>>a[6];//是否要乘法//cout<<"是否要乘法,是输入1,否输入0:";//cin>>a[7]; cout<<endl;for(int i=0;i<a[2];i++){ cout<<i+1<<"、"; s=(rand()%(a[1]-a[0]+1))+a[0];b=(rand()%(a[1]-a[0]+1))+a[0];if(a[5]==1){if(a[7]==1){c=rand()%4;//0-3 }else{c=rand()%3;//0-2 }}else{if(a[7]==1){c=rand()%3+1;//1-3 }else{c=rand()%2+1;//1-2 }}switch (c){case 1:cout<<s<<"+"<<b<<"="<<"\t";break;case 2:if(s>b){cout<<s<<"-"<<b<<"="<<"\t";}else{cout<<b<<"-"<<s<<"="<<"\t";}break;case 3: cout<<s<<"*"<<b<<"="<<"\t";break;case 0://除法if(a[6]==1)//有余数 {if(b==0){cout<<b<<"/"<<s<<"="<<"\t";}else{cout<<s<<"/"<<b<<"="<<"\t"; }}else{while((j<100000)&&(s!=0)&&(b!=0)&&(s%b==0)){cout<<s<<"/"<<b<<"="<<"\t";j++;}if((s!=0)&&(b!=0)&&(s%b==0)){cout<<s<<"/"<<b<<"="<<"\t";//i++; }else{int j=0;while(j<100000){s=(rand()%(a[1]-a[0]+1))+a[0];s=(rand()%(a[1]-a[0]+1))+a[0];if((s!=0)&&(b!=0)&&(s%b==0)){cout<<s<<"/"<<b<<"="<<"\t";//i++;j=100000;j++;}else{j++;}}} }break; } if((i+1)%a[3]==0){cout<<endl;for(int m=0;m<a[4];m++){cout<<endl;}}}//继续吗?cout<<"继续吗?是输入1,否输入0:"<<endl;cin>>con;if(con==1){cout<<endl;main();}else{return 0;}getch();return 0; }
1.测试结果是否正确:
有三种情况:(1)数据是:0 900 90 4 0 1 1 1;其意义是显示0-900之间不重复的每行4个间距为0的90道有加减乘除(除法有余数)的四则运算题,结果正确 如截图
(2)数据是:0 900 80 5 1 1 0 1;其意义是显示0-900之间不重复的每行5个间距为1的80道有加减乘除(除法无余数)的四则运算题,结果正确 如截图
(3)数据是:0 900 80 4 0 0 0 0;其意义是显示0-900之间不重复的每行4个间距为0的80道有加减无乘除的四则运算题,结果正确 如截图
2.边界值测试:
(1)数据范围如果前边的数大于后边的数:结果是要求用户充新输入,并提示第一个数应该小于第二个数。如果用户重新输入正确的数,会得到正确的结果;
题目数量不能超过数据范围,超过会重复;结果要求用户重新输入,并提示应输入一个小点的书。如果用户重新输入正确的数,会得到正确的结果;
间距不能太大,否则影响做题,不能为负数;结果要求用户重新输入,并提示相关信息。如果用户重新输入正确的输,会得到正确的结果;
测试结果正确,如下截图:
经以上结果可以看出,基本满足用户的功能要求。
转载于:https://www.cnblogs.com/zhaixing/p/4340147.html
代码规范以及单元测试项目相关推荐
- python代码规范工具_如何检查python3中的代码规范
如何检查python3中的代码规范 发布时间:2020-11-16 09:40:48 来源:亿速云 阅读:77 作者:小新 这篇文章给大家分享的是有关如何检查python3中的代码规范的内容.小编觉得 ...
- 射手科技公开课第一辑 『项目管理和代码规范』
射手玩的东西越来越全面了,从当年的字幕下载站,到播放器,到射手科技,发展的思路值得借鉴和思考. 射手科技成立3个月以来,我们内部已经组织了不少培训.每次内部培训我们都留有录像和录音,以便后续参与项目的 ...
- 付宇泽20190919-5 代码规范,结对要求
此作业要求参见https://edu.cnblogs.com/campus/nenu/2019fall/homework/7630 结对要求,适用于本周所有标注"结对"的作业: 每 ...
- 记录前端常用代码规范
代码规范的目的是为了编写出高质量的代码.让团队人员每天都是愉悦的,大家在一起每天都是快乐的 ![](,一下就来列举一些常用的代码规范条约,在后面的开发中大家也可以一同来完善我们的代码规范条例: 让我们 ...
- 【代码规范】google开源c\c++项目代码规范
版权声明:版权声明:本文为博主原创文章,未经博主允许不得转载;https://blog.csdn.net/csdn_baotai https://blog.csdn.net/csdn_baotai/a ...
- 【开发规范】go项目开发中的[流程,git,代码,目录,微服务仓库管理,静态检查]
文章目录 前言 一.有哪些规范我们应该遵循 二.项目开发流程 三.git的代码分支管理 1. 分支管理 2. commit规范 三.go的代码规范 四.go项目目录规范 五.微服务该采用multi-r ...
- 项目质量监测(一)——代码质量检查-书写风格、代码规范、高度耦合 代码质量监测之Js检验工具-JSLint、JSHint、ESLint
项目质量监测(一)--代码质量检查-书写风格.代码规范.高度耦合 & 代码质量监测之Js检验工具-JSLint.JSHint.ESLint 5-2 项目质量监测 课程介绍 没有规矩不成方圆,所 ...
- 【C 语言】C 项目开发代码规范 ( 形参合法性判断 | 函数返回值局部变量 | 函数中不用全局变量 | 函数中使用局部变量接收形参 | 函数返回值 | 形参作返回值 | 形参返回值处理 )
文章目录 一.C 项目开发代码规范 一.C 项目开发代码规范 上一篇博客 [C 语言]字符串模型 ( 键值对模型 ) 中 , 完成了字符串的 键值对 查找功能 , 代码不太规范 ; C 项目开发代码规 ...
- 项目Alpha冲刺——代码规范、本次冲刺任务与计划
作业格式 课程名称:软件工程1916|W(福州大学) 作业要求:项目Alpha冲刺(团队) 团队名称: 那周余嘉熊掌将得队 作业目标:代码规范.本次冲刺任务与计划 团队信息: 队员学号 队员姓名 博客 ...
最新文章
- java list 截取部分数据_Java List.subList()方法:获取列表中指定范围的子列表
- delphi dbgrid 焦点 行号_火箭VS爵士领衔,多场焦点对决!今日NBA全部比赛视频直播预告...
- 苹果是c语言安卓是什么语言,主流app是用什么语言开发的苹果和安卓的主流开...
- Spring 3.2矩阵变量是什么? - 第1部分
- el table 固定表头和首行_vue表格实现固定表头首列
- python中is、id、==与浅拷贝和深拷贝
- django 获取 axios get 过来的数据_一起DevOps系列12django数据库创建与使用
- JavaSE----异常处理
- android感应不了夜神模拟器,夜神模拟器使用(检测不到)
- cmdline-tools component is missing
- 分数计算器java报告_20182307 2019-2020-1 《数据结构与面向对象程序设计》实验四报告...
- java文件读写之Channel策略
- netcat 下载地址
- 中国科大的毕业生去向
- 阿拉伯数字转换为中文大写数字
- IAR下连仿真器可以正常运行,程序下载到flash部分功能异常
- Sublime Text3(mac版)上好用的插件
- Spring Boot 整合 RabbitMQ 实现
- js 在js字符串中添加空格
- C语言———字符与字符串
热门文章
- javascript GlobalEventHandlers
- docker 容器命令
- D3 插入删除元素元素
- java yyyy-mm-dd 日期格式_Java中的日历日期为yyyy-MM-dd格式
- 路西法第一季为什么会被打伤_《数码宝贝》第一季,为何只有亚古兽与加布兽会究极进化?...
- python中urllib.parse啥意思_python-urllib.parse模块简述
- 一步步实现SDDC-Edge与动态路由实现
- Linux学习总结(11)——Linux文件查找
- spark 存入hbase_Spark DataFrame写入HBase的常用方式
- 100ml干胶能带上地铁吗_雪板能带上飞机高铁吗?该怎么带滑雪装备前往雪场?...