问题:设计一程序,给二年级小学生随机产生四则运算题目。

一、设计思考问题:

1.四则运算需要俩个运算数和一个运算符。

2.如何产生随机数?

3.如何实现随机产生四则运算?

4.题目是否符合小学生学习范围?(减法和除法)

二、程序源代码:

#include<iostream.h>
#include<stdlib.h>
#include "time.h"
int main ()
{
cout<<"--------四则运算题--------"<<endl;
cout<<endl;
srand( (unsigned)time( NULL ) );//随机数种子为当前计算机时间。
int i,a,b,j,n,t;
cout<<"请输入要生成题目数n:"<<endl;//选择题目数量。
cin>>n;
for(j=0;j<n;j++)
{
//产生随机数。
a=rand()%100;
b=rand()%100+1;//保证除数不为0。
i=rand()%4;
t=j%2;
if(t<=0)
cout<<endl;
switch(i)
{
case 0:
cout<<a<<"+"<<b<<"="<<" ";
break;
case 1:
if(a>=b)
cout<<a<<"-"<<b<<"="<<" ";
else
cout<<b<<"-"<<a<<"="<<" ";//保证被减数大于等于减数。
break;
case 2:
cout<<a<<"*"<<b<<"="<<" ";
break;
case 3:
cout<<a<<"/"<<b<<"="<<" ";
break;
}
}
cout<<endl;
return 0;
}

三、实验截图:

四、课上未完成原因:

不晓得随机函数头文件,好久没写程序,思路有点慢。

30道四则运算题目---课堂作业--软件工程c++的更多相关文章

  1. 软件工程课后作业——用JAVA编写的随机产生30道四则运算

    package com.java.sizeyunsuan; public class lianxi { String f() { int i=(int)(Math.random()*10); int ...

  2. 随机生成30道四则运算-NEW

    补充:紧跟上一个随机生成30道四则运算的题目,做了一点补充,可以有真分数之间的运算,于是需要在原来的基础上做一些改进. 首先指出上一个程序中的几个不足:1.每次执行的结果都一样,所以不能每天给孩子出3 ...

  3. 30道四则运算<1>

    #include<iostream> using namespace std; #define random()(rand()%100) class shuzi //shuzi类的功能是产 ...

  4. 30道四则运算<2>

    #include<iostream> #include<time.h> #include<fstream> #define random() (rand()%100 ...

  5. 随机的30道四则运算题(简单的c)

    #include <stdio.h>#include <stdlib.h>#include <time.h> int main(void){ int i = 0; ...

  6. Java——自动生成30道四则运算---18.09.27

    package chuti;import java.io.PrintWriter;import java.util.Scanner;import java.io.FileNotFoundExcepti ...

  7. 30道四则运算<2>单元测试

    该测试未实现除法 该测试中间多了/)两个符号,而且没有等号和回车. 该测试也没有符合除法要求 该测试也没有满足除法要求 该测试满足要求. 总结:程序中涉及到有除法的输出都有问题,多次改正未果:其他条件 ...

  8. 随机生成30道四则运算题NEW

    代码: #include <iostream> #include <time.h> using namespace std; void main() { srand((int) ...

  9. 【2015 软件工程 个人项目 PJ1】四则运算题目生成程序

    1.开发时间预估 PSP2.1 Personal Software Process Stages Time Planning 计划 · Estimate · 估计这个任务需要多少时间 2day Dev ...

随机推荐

  1. 一、Linux目录结构

    转自:http://www.cnblogs.com/JCSU/articles/2770249.html 你想知道为什么某些程序位于/bin下,或者/sbin,或者/usr/bin,或/usr/sbi ...

  2. 远程DLL注入

    界面如下: 关键部分代码如下: void CInjectDllDlg::OnBnClickedButtonInject() { // TODO: 在此添加控件通知处理程序代码 UpdateData(T ...

  3. Splash Screen开场屏在Android中的实现

    很多网友可能发现近期Tencent推出的手机QQ Android版包含了一个开场屏Splash Screen载入效果,通常游戏或大型软件打开时可能需要一个释放解析资源的过程,需要一个前台的动画播放和后 ...

  4. SQL加、查、改、删、函数

    SQL加.查.改.删.函数   USE lianxiGOcreate table student1(code int not null ,name varchar(20),sex char(4),ci ...

  5. C++获取得到图片的坐标和rgb

    #include <iostream> #include <fstream> #include <string> #include <windows.h> ...

  6. Dll学习二_Dll 窗体中动态创建数据并使用Demo

    沿用上一篇Demo 环境:DelphiXE,XP,SQL2005 贴出改动过的单元代码: dbGrid控件版: unit SubMain_Unit; interface uses Windows, M ...

  7. 十款基础级WordPress插件

    1.Akismet插件 Akismet是全球最受欢迎的反垃圾插件,专为对抗"博客spam"."评论spam"而生.Akismet是WordPress官方插件之一 ...

  8. GetProperties(BindingFlags)说明

    Instance|Public:获取公共的的实例属性(非静态的) Instance|NonPublic:获取非公共的的实例属性(非静态的).(private/protect/internal) Sta ...

  9. 十天学会单片机Day4串行口通信

    并行与串行基本通信方式 1.并行通信方式 通常是将数据字节的各位用多条数据线同时进行传送. 并行通信控制简单.传输速度快:由于传输线较多,长距离传送时成本高且接收方的各位同时接收存在困难. 2.串行通 ...

  10. Python之路-(三级菜单)

    data = { '北京':{ '海淀':{ '五道口':{ 'soho':{}, '网易':{}, 'google':{} }, '中关村':{ '爱奇艺':{}, '汽车之家':{}, 'youk ...