二、单元测试项目
编写相关测试程序:源代码如下:
/**
题目: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<<"="<<" ";
break;
case 2:
if(s>b)
{
cout<<s<<"-"<<b<<"="<<" ";
}
else
{
cout<<b<<"-"<<s<<"="<<" ";
}
break;
case 3:
cout<<s<<"*"<<b<<"="<<" ";
break;
case 0://除法
if(a[6]==1)//有余数
{
if(b==0)
{
cout<<b<<"/"<<s<<"="<<" ";
}
else
{
cout<<s<<"/"<<b<<"="<<" ";
}
}
else
{
while((j<100000)&&(s!=0)&&(b!=0)&&(s%b==0))
{
cout<<s<<"/"<<b<<"="<<" ";
j++;
}
if((s!=0)&&(b!=0)&&(s%b==0))
{
cout<<s<<"/"<<b<<"="<<" ";
//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<<"="<<" ";
//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;
}