30道四则运算题目---课堂作业--软件工程c++
问题:设计一程序,给二年级小学生随机产生四则运算题目。
一、设计思考问题:
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++的更多相关文章
- 软件工程课后作业——用JAVA编写的随机产生30道四则运算
package com.java.sizeyunsuan; public class lianxi { String f() { int i=(int)(Math.random()*10); int ...
- 随机生成30道四则运算-NEW
补充:紧跟上一个随机生成30道四则运算的题目,做了一点补充,可以有真分数之间的运算,于是需要在原来的基础上做一些改进. 首先指出上一个程序中的几个不足:1.每次执行的结果都一样,所以不能每天给孩子出3 ...
- 30道四则运算<1>
#include<iostream> using namespace std; #define random()(rand()%100) class shuzi //shuzi类的功能是产 ...
- 30道四则运算<2>
#include<iostream> #include<time.h> #include<fstream> #define random() (rand()%100 ...
- 随机的30道四则运算题(简单的c)
#include <stdio.h>#include <stdlib.h>#include <time.h> int main(void){ int i = 0; ...
- Java——自动生成30道四则运算---18.09.27
package chuti;import java.io.PrintWriter;import java.util.Scanner;import java.io.FileNotFoundExcepti ...
- 30道四则运算<2>单元测试
该测试未实现除法 该测试中间多了/)两个符号,而且没有等号和回车. 该测试也没有符合除法要求 该测试也没有满足除法要求 该测试满足要求. 总结:程序中涉及到有除法的输出都有问题,多次改正未果:其他条件 ...
- 随机生成30道四则运算题NEW
代码: #include <iostream> #include <time.h> using namespace std; void main() { srand((int) ...
- 【2015 软件工程 个人项目 PJ1】四则运算题目生成程序
1.开发时间预估 PSP2.1 Personal Software Process Stages Time Planning 计划 · Estimate · 估计这个任务需要多少时间 2day Dev ...
随机推荐
- 在阿里云 CentOS 服务器(ECS)上搭建 nginx + mysql + php-fpm 环境
阿里云的云服务器(ECS)可以选择多种操作系统,打算用它运行 Drupal或者 WordPress ,你最好选择 Linux 系统,这篇文章的演示是基于阿里云的 CentOS 操作系统的服务器.我们在 ...
- Count and Say [LeetCode 38]
1- 问题描述 The count-and-say sequence is the sequence of integers beginning as follows: 1, 11, 21, 1211 ...
- 面向对象的 JavaScript
面向对象的javascript 一.创建对象 创建对象的几种方式: var obj = {}; var obj = new Object(); var obj = Object.create(fath ...
- iOS网络通讯——监测网络状态:Reachability(可达性)
1.iOS平台是按照一直有网络连接的思路来设计的,开发者利用这一特点创造了很多优秀的第三方应用.大多数的iOS应用都需要联网,甚至有些应用严重依赖网络,没有网络就无法正常工作. 2.在你的应用尝试通过 ...
- centos6.7下编译安装lamp环境
编译C源代码: 前提:提供开发工具及开发环境 通过“包组”提供开发组件,CentOS 6: "Development Tools", "Server Platform D ...
- 直接拿来用!超实用的Java数组技巧攻略[转]
来自csdn http://www.csdn.net/article/2013-09-16/2816947-methods-for-java-arrays 本文分享了关于Java数组最顶级的11大方法 ...
- 【转】MessageBox
MessageBox对话框是比较常用的一个信息对话框,其不仅能够定义显示的信息内容.信息提示图标,而且可以定义按钮组合及对话框的标题,是一个功能齐全的信息对话框. 1.函数原型及参数 function ...
- C++primer 阅读点滴记录(三)
14章 操作符重载和转换 重载操作符是具有特殊名称的函数:保留字operator后接需要定义的操作符符号. 1.重载的操作符名: + – * / % ^ & | ~ ! , = < & ...
- Java 装箱 拆箱
Java 自动装箱与拆箱 ??什么是自动装箱拆箱 基本数据类型的自动装箱(autoboxing).拆箱(unboxing)是自J2SE 5.0开始提供的功能. 一般我们要创建一个类的对象的时候,我 ...
- linux MTD系统解析(转)
MTD,Memory Technology Device即内存技术设备,在Linux内核中,引入MTD层为NOR FLASH和NAND FLASH设备提供统一接口.MTD将文件系统与底层FLASH存储 ...