软件工程随堂小作业——随机四则运算(C++)
一、设计思路:
1.程序的主体部分是循环输出,次数即题目数目由用户输入;
2.三个整型变量+rand函数来实现随机数四则运算,一个变量代表加减乘除,另外两个用作运算数;
3.用户体验:题目分三列,排列整洁间距适中,并且不会显示除数为0的情况。
二、源代码
#include "stdafx.h"
#include "iostream.h"
#include "stdlib.h"
#include "time.h"
int main(int argc, char* argv[])
{
int a,b,c,n=; //a表示运算符号,b c是两个数,n表示出题数目
srand((unsigned)time(NULL)); //srand()函数产生一个以当前时间开始的随机种子
cout<<"请输入出题数目:";
cin>>n;
for(int i=;i<=n;i++)
{
a=rand()%;
b=rand()%; //b c是两个随机的100以内的整数
c=rand()%;
cout<<"("<<i<<")"<<b;
switch(a)
{
case :cout<<"+"<<c<<"=\t\t";break;
case :cout<<"-"<<c<<"=\t\t";break;
case :cout<<"*"<<c<<"=\t\t";break;
case :if(c==) {i--;break;}
cout<<"/"<<c<<"=\t\t";break;
default:cout<<"+"<<c<<"=\t\t";break;
}
if(i%==)
cout<<endl;
}
cout<<endl;
return ;
}
三、运行结果

四、遇到的困难
由于一个寒假没怎么接触编程,对我来说最大的困难就是不清楚rand函数的用法以及其所在的头文件。在借鉴了郭庆樑同学的程序之后,很快就实现了基本功能。之后,我又调整了一下页面。添加了srand((unsigned)time(NULL)); 。因为只用rand函数的话,每次运行程序计算机产生的随机数都是固定不变的。
软件工程随堂小作业——随机四则运算(C++)的更多相关文章
- 软件工程随堂小作业——随机四则运算Ⅱ(C++)
一.设计思路 设计思路已给出,此处不再赘述. 二.源代码 (1)四则运算2.cpp(源文件) // 四则运算2.cpp : Defines the entry point for the consol ...
- 软件工程随堂小作业——随机四则运算Ⅱ之算法思路(C++)
1.题目避免重复: (1)利用系统时间来产生随机数,重复率会降低. (2)建立链表,逐个判断.可读取写入文件. 2.可定制(数量/打印方式): (1)格式有默认值; (2)可以选择重新设置分几列和每行 ...
- 软件工程随堂小作业——寻找“水桶”(C++)
一.设计思想 思路与寻找一个水王相似,这次只是计数器和嫌疑人变量都设置为数组.每次选取一个ID与三个嫌疑人比较,若有相同则计数:若三个都不相同,则三个计数器都减一.若减为0,则从新赋值给嫌疑人. 二. ...
- 软件工程随堂小作业—— 寻找“水王”(C++)
一.设计思路 (1)输入发帖ID记录表 (2)从第一个ID开始,与后续的发帖ID进行比较,若相同计数器则加一,否则减一.若计数器的数值被减为零,则重新选取当前ID开始记录比较. (3)输出结果 二.源 ...
- 软件工程随堂小作业——(C++)
一.设计思路 本来我的思路是根据上楼的人数和上楼的层数来计算出平均值,但是我发现这个思路不对.于是我选择了最笨的方法,复杂度为O(n2). (1)输入坐电梯的人数和要去的楼层: (2)找到输入楼层里最 ...
- 软件工程随堂小作业——最优惠价钱(C++)
一.设计思路 前提,没有买重复书的情况是最优惠的.总共买n本书,可以分解成5k+(n-5k),k=0,1,2,...1.如果k=0,n本不重复的价钱是最优惠的:2.如果k=1,算出每一种情况的折扣并比 ...
- 福州大学软件工程1816 | W班 第8次作业[团队作业,随堂小测——校友录]
作业链接 团队作业,随堂小测--校友录 评分细则 本次个人项目分数由两部分组成(博客分满分40分+程序得分满分60分) 博客和程序得分表 评分统计图 千帆竞发图 总结 旅法师:实现了更新,导出,查询, ...
- 结对作业——随机生成四则运算(Core 第7组)
结对作业 ——随机生成四则运算(core第7组) 吕佳玲 PB16060145 涂涵越 PB16060282 GITHUB地址 https://github.com/hytu99/homework_2 ...
- [福大软工] Z班 团队作业——随堂小测(同学录) 作业成绩
团队作业--随堂小测(同学录) 作业链接 http://www.cnblogs.com/easteast/p/7763645.html 作业情况 本次作业从原先预计的3小时,有些组打了鸡血连续肝了4. ...
随机推荐
- jQuery中$(function() {});问题详解
$(function() {});是$(document).ready(function(){ })的简写,最早接触的时候也说$(document).ready(function(){ })这个函数是 ...
- Data Being Added Conflicts with Existing Data
While developing a page with multiple scrolls levels, and especially when using a grid, you may get ...
- 兼容ie7的导航下拉菜单
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- [转]给C++初学者的50个忠告
1.把C++当成一门新的语言学习(和C没啥关系!真的.): 2.看<Thinking In C++>,不要看<C++变成死相>: 3.看<The C++ Prog ...
- python 使用联动优势支付接口的sign与verify
直接上代码 if options.umpay_private_key is not None and len(options.umpay_private_key) > 0: try: with ...
- salt-ssh安装及简单使用
需要 salt-master 0.17以上版本支持 1.安装 相关依赖包可查看requirements.txt Jinja2 M2Crypto msgpack-python pycrypto PyYA ...
- IO - 同步,异步,阻塞,非阻塞 (转)
转自:http://blog.csdn.net/historyasamirror/article/details/5778378 向大牛学习,言归正传.同步(synchronous) IO和异步(as ...
- RAP开发入门-开发笔记
一.发布/运行 每次项目发布时需要在MANIFEST.MF->bulid中勾选依赖包.文件.代码等,避免报错 部署时项目可能会报一个baseline的错误,window->preferen ...
- 微信支付开发,再次签名,APP调用
1.商户服务器生成支付订单,先调用[统一下单API]生成预付单,获取到prepay_id后将参数再次签名传输给APP发起支付. 再次生成签名的时候,按照接口: https://pay.weixin.q ...
- oracle 临时表空间
环境: OS: Oracle Linux Server release 5.7 DB: Oracle Database 11g Enterprise Edition Release 11.2.0.3. ...