1.设计思路:
上篇已写,不在解释。。。。。
2.源代码:
#include<iostream.h>
#include<stdlib.h>
#include "time.h"
int main ()
{
int a,b,c,f,j,i,t,num,l,jj,cc,fw;//i,j,t是计数变量,a,b是运算数。
cout<<"-----------------四则运算题----------------------"<<endl;
cout<<endl;
srand( (unsigned)time( NULL ) );//随机数种子为当前计算机时间。
cout<<"*************请填写题目要求:********************"<<endl;
cout<<"* *"<<endl;
cout<<"* 1.请输入要生成题目数num: *"<<endl;//选择题目数量。
cout<<"* 2.请输入打印方式(列数l、行间距jj): *"<<endl;//选择打印方式。
cout<<"* 3.请选择有无乘除法cc(1代表有或0代表无): *"<<endl;//有无乘除法。
cout<<"* 4.请选择数的范围fw(fw是指该范围内最大的数): *"<<endl;//选择数的范围。
cout<<"* 5.请选择除法有无余数c(1代表有或0代表无): *"<<endl;//选择除法有无余数。
cout<<"* 6.请选择加减有无负数f(1代表有或0代表无): *"<<endl;//选择加减有无负数。
cout<<"* *"<<endl;
cout<<"*************************************************"<<endl;
cout<<"请输入要生成题目数num:"<<endl;
cin>>num;
if(num<0)
{
cout<<"错了! 亲! 题目数量不能小于0,请重输:";
cin>>num;
}
cout<<"请输入打印方式 (列数l):"<<endl;
cin>>l;
if(l<=0)
{
cout<<"错了! 亲! 列数不能小于等于0,请重输:";
cin>>l;
}
cout<<"请输入打印方式 (行间距jj):"<<endl;
cin>>jj;
if(jj<=0)
{
cout<<"错了! 亲! 行间距不能小于等于0,请重输:";
cin>>jj;
}
cout<<"请选择有无乘除法cc(1代表有或0代表无): "<<endl;
cin>>cc;
if(cc!=0&&cc!=1)
{
cout<<"错了! 亲! 请重输:";
cin>>cc;
}
cout<<"请选择数的范围fw(fw是指该范围内最大的数):"<<endl;
cin>>fw;
cout<<"请选择除法有无余数c(1代表有或0代表无):"<<endl;
cin>>c;
if(c!=0&&c!=1)
{
cout<<"错了! 亲! 请重输:";
cin>>c;
}
cout<<"请选择加减有无负数f(1代表有或0代表无):"<<endl;
cin>>f;
if(f!=0&&f!=1)
{
cout<<"错了! 亲! 请重输:";
cin>>f;
}
cout<<endl;
if(cc==1)
cc=cc+3;
else
cc=cc+2;
for(j=0;j<num;j++)
{
//产生随机数。
a=rand()%fw;
b=rand()%fw+1;//保证除数不为0。
i=rand()%cc;
switch(i)
{
case 0:
cout<<a<<"+"<<b<<"="<<" ";
break;
case 1:
if(f==0&&a<=b)
cout<<b<<"-"<<a<<"="<<" ";
else
cout<<a<<"-"<<b<<"="<<" ";
break;
case 2:
cout<<a<<"*"<<b<<"="<<" ";
break;
case 3:
if(a%b!=0&&c==0)
cout<<a-a%b<<"/"<<b<<"="<<" ";
else
cout<<a<<"/"<<b<<"="<<" ";
break;
}
if(j%l==l-1)
{
for(t=0;t<jj;t++)
cout<<endl;
}
}
cout<<endl;
return 0;
}
3.运行结果:
4、PSP0级 记录表
周活动记录总表
姓名:董龙洋 日期:2015.3.14
日期/任务 |
听课 |
编程 |
阅读 |
准备考试 |
日总计 |
||
周日 |
|||||||
周一 |
|||||||
周二 |
20 |
||||||
周三 |
|||||||
周四 |
75 |
||||||
周五 |
30 |
||||||
周六 |
100 |
||||||
周总结 |
225 |
阶段时间和效率 周数(上一次周活动表的周数+1):1
不包括上一周在内的累计时间
总计 |
|||||||
平均 |
|||||||
最大 |
|||||||
最小 |
以前各周的累积时间
时间记录表:
学生:董龙洋 日期:2015.3.14
教师:王建民 课程:psp
日期 |
开始时间 |
结束时间 |
中断时间 |
净时间 |
活动 |
备注 |
3.10 |
9:30 |
9:50 |
0 |
20 |
课堂练习 |
|
3.12 |
16:05 |
19:20 |
60 |
75 |
四则运算 |
吃饭一小时 |
3.13 |
9;20 |
9:50 |
0 |
30 |
课堂练习 |
|
3.14 |
18:23 |
20:03 |
0 |
100 |
四则运算 |
|
缺陷记录日志:
学生:董龙洋
日期:2015.3.14
教师:王建民
程序员:
日期 |
编号 |
类型 |
引入阶段 |
排除阶段 |
修复时间 |
修复缺陷 |
3.10 |
1 |
写代码 |
编译 |
2min |
||
3.12 |
2 |
写代码 |
执行 |
30min |
逻辑错误 |
|
5.总结:写程序少,逻辑错误不易解决,从中学到方法是每实现一个小功能就测试一下。
变量定义、结构不明确,当时清楚,过一会忘了,感觉加点注释记一下不错哦!!!!