随机产生算式(vector和random)

本文介绍了一个程序设计实现,用于随机生成包含加法和减法的混合运算题目,涉及整数范围0~99,用户答题后给出评分及错误提示。
摘要由CSDN通过智能技术生成

程序设计实现“加”、“减”混合运算练习。 随机产生4个整数(0~99),生成一道混合运算题,让用户给出答案。共生成10到混合运算题,每题10分,完成后对用户的答题给出分值,并且显示出用户哪些题错误,哪些题正确。错误的给出正确答案。其中“+”、“-”运算符是随机选择。

运算效果:

请答题:

第1题:6+12+45-80=?

           17

           第2题: 4+6-12+34=?

           30

           …….

你的得分:80分

第1题 6+12+45-80=-17 right;

第2题4+6-12+34=30,error ; answer:  32

        ……

解析:写子程序产生随机式,在此子程序过程中算式存为string,同时产生结果int;在主程序中十循,调用此子函数,同时要求cin并比较输入与返回结果,完善string

同时算分数,此外,要把完善后的string压人vector中。十循之后,再十循vector输出。

难点:首先思路上要考虑周全,最后我得出的方法是先寄存再输出。同时有个小细节,就是如何将int转化为string存入公式中。此处有三个问题:

  1. string具有可加性,但不能是char+char(该结果为int),只能是char+string。三位数(即三个char )的话,要先把个位转成char ,再转为string ,然后先十位加个位,再百位加string
  2. int有正负,需先判断正负,负转正,并在最前面加上-
  3. 位数不确定。该题不会超过三位数。若位数不确定,可用循环,a/10==0时停止从低位到高位,每次都是char +string 即可。

程序试做

#include<iostream>
#include<vector>
#i
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值