用C给小学生出题目
用C给小学生出题目
一、预估与实际
| PSP2.1 | Personal Software Process Stages | 预估耗时(分钟) | 实际耗时(分钟) |
|---|---|---|---|
| Planning | 计划 | 600 | 300 |
| • Estimate | • 估计这个任务需要多少时间 | 600 | 300 |
| Development | 开发 | 120 | 90 |
| • Analysis | • 需求分析 (包括学习新技术) | 120 | 70 |
| • Design Spec | • 生成设计文档 | 100 | |
| • Design Review | • 设计复审 | 200 | 200 |
| • Coding Standard | • 代码规范 (为目前的开发制定合适的规范) | 120 | 60 |
| • Design | • 具体设计 | 30 | 60 |
| • Coding | • 具体编码 | 30 | 120 |
| • Code Review | • 代码复审 | 30 | 15 |
| • Test | • 测试(自我测试,修改代码,提交修改) | 120 | 60 |
| Reporting | 报告 | 120 | 60 |
| • Test Repor | • 测试报告 | 100 | 60 |
| • Size Measurement | • 计算工作量 | 120 | 60 |
| • Postmortem & Process Improvement Plan | • 事后总结, 并提出过程改进计划 | 120 | 60 |
| 合计 | 1000 |
二、需求分析
我通过网络搜索的方式了解到,小学一年级数学有如下的几个特点:
- 特点1
- ..两位数加减,没有负数
-特点2
-简单
经过分析,我认为,这个程序应当:
- 使用的数字小于三位数
- ..没有负数
三、设计
1. 设计思路
说明你如何设计这个程序
比如:
- 这个程序有x个类,x个函数,函数之间的调用关系是怎样的?
- 关键函数的流程图是怎样的?
- 算法的关键的关键是什么?
- 由于JAVA没学好导致不太会调用各种类,所以这次编程题我使用了爷爷级别的C
-调用随机数种子((unsigned)time(NULL))
-然后选择循环输出定义的一大堆数进行加减乘除
2. 实现方案
写出具体实现的步骤
比如:
- 准备工作:先在Github上创建仓库,克隆到本地...
- 技术关键点:梳理一下设计思路,可能遇到哪些技术关键点
- 打开VS2015开始敲
四、编码
请说明你如何按照设计思路进行编码,并记录你在开发中遇到的问题,与解决过程
1. 调试日志
记录编码调试的日志,请记录下开发过程中的 debug 历程
比如:
- 在代码的什么位置,代码出现了什么问题,问题会导致什么结果,怎么解决的
2. 关键代码
for(i=1;i<=10;i++) //循环
{
d1=rand()%91+10,d2=rand()%91+10; //rand()%91+10,输出10-100之前的随机数字
d3=rand()%91+10,d4=rand()%91+10;
d5=d1+d2;d6=d3*d4; //进行符号运算
d7=d1-d2;d8=d3/d4;
}
3. 代码规范
请给出本次实验使用的代码规范:
- 第一条 注释双斜杠//
- 第二条 printf注意在循环里面
-第三条 答案在另外一个循环里
并人工检查代码是否符合规范
五、测试
运行程序后先审查题目是否有重复,格式是否正确,再用计算器简单计算随机几道题答案是否正确
六、总结
请总结过程中的教训和经验,思考
-由于没学好JAVA,在思考了两天如何用JAVA实现这道题目后彻底懵逼,太多基础要补了
-所以用C写了这道后发现原理其实蛮简单的,就是格式化规范比较繁琐
-参数实现也非常容易
-另外感觉还是要紧跟潮流用JAVA比较好
用C给小学生出题目的更多相关文章
- 作业二:个人编程项目——编写一个能自动生成小学四则运算题目的程序
1. 编写一个能自动生成小学四则运算题目的程序.(10分) 基本要求: 除了整数以外,还能支持真分数的四则运算. 对实现的功能进行描述,并且对实现结果要求截图. 本题发一篇随笔,内容包括: 题 ...
- myapp——自动生成小学四则运算题目的命令行程序(侯国鑫 谢嘉帆)
1.Github项目地址 https://github.com/baiyexing/myapp.git 2.功能要求 题目:实现一个自动生成小学四则运算题目的命令行程序 功能(已全部实现) 使用 -n ...
- Individual Project "写一个能自动生成小学四则运算题目的程序"
一.题目简介 写一个能自动生成小学四则运算题目的程序. 初步拟定要实现的功能后,估计一下自己需要花多长时间.编程过程中记录自己实际用了多长时间. 然后和同学们比较一下各自程序的功能.实现方法的异同等等 ...
- 为小学生出四则运算题目.java
import java.util.Scanner; import java.util.Random; public class test{ public static int s1 = new Ran ...
- C语言:一个能自动生成小学四则运算题目的程序
完成这个程序,半个小时内完成了,这个程序,可以自动生成小学简易的四则运算,提供菜单让用户选择,然后判断加减乘除,判断答对答错的题目个数,用户同时也可以重新选择继续答题或重新选择或退出程序. 源程序: ...
- Python实现自动生成小学四则运算题目
Github地址: https://github.com/guoyuyi/gyy.github.io/blob/%E4%BD%9C%E4%B8%9A1/zy1.py 题目描述: 通过python语言编 ...
- 实现一个自动生成小学四则运算题目的命令行程序(java实现)
Github项目地址:https://github.com/xiaobaot/wordcount/tree/master/sizeyusuan 团队成员:谢家明(代码生成) 谢竣(测试完善) 项 ...
- python实现自动生成小学四则运算题目(软工第二次项目作业)
前言 软件工程 传送带 作业要求 传送带 作业目标 结对编程:代码实现.性能分析.异常处理说明.记录PSP表格 代码见: github 个人信息:朱育清 3118005437 信安二班 我的partn ...
- OpenJudge 7624 山区建小学
在openjudge似乎无法凭题号搜到题...? 总时间限制: 1000ms 内存限制: 65536kB 描述 政府在某山区修建了一条道路,恰好穿越总共m个村庄的每个村庄一次,没有回路或交叉,任 ...
随机推荐
- Angular7教程-01-Angular开发环境配置
本教程基于angular7(2018-11-04) 1. 安装node.js 下载地址: http://nodejs.cn/download/ 下载对应自己操作系统的版本安装即可. 2.安装 angu ...
- MongoDB初学笔记(1)
学习目标 理解MongoDb的特点和体系结构 掌握常用的MongoDB命令 MongoDB是一种介于关系数据库和非关系数据库中的一种数据库.它支持的数据结构非常松散,类似于JSON的BJSOn格式,所 ...
- C语言实现随机数
最近在看<The C Programming Language>这本书,看到一个关于随机数的知识点,有种豁然开朗的感觉.以前总靠死记硬背,也不明白为啥是这样,而且总把srand()遗漏.相 ...
- C语言中数组定义方式
<1>前言 大家首先来思考一个问题,若是我们想要定义两个变量,求这两个数的平均数,该怎么求呢? 例如:int a = 10,b = 20 int average = (a + b) / 2 ...
- 【转】SVG与HTML、JavaScript的三种调用方式
原文:https://www.cnblogs.com/guohu/p/5085045.html SVG与HTML.JavaScript的三种调用方式 一.在HTMl中访问SVG的DOM 1 2 3 4 ...
- 大数据入门第二天——基础部分之zookeeper(上)
一.概述 1.是什么? 根据凡技术必登其官网的原则,我们先去官网瞅一瞅:http://zookeeper.apache.org/ Apache ZooKeeper is an effort to de ...
- VB6 加载水晶报表例子
VB6 加载水晶报表例子 先按照水晶报表组件 Crystal Reports,Business Objects,现已被SAP收购. 再添加引用 'Library: CRAXDRT 'C:\Progra ...
- mysql 导出表,导出数据 命令
mysql mysqldump 只导出表结构 不导出数据 复制代码代码如下: mysqldump --opt -d 数据库名 -u root -p > xxx.sql 备份数据库 复制代码代 ...
- c++ 分配与释放内存
教学内容: calloc分配内存 calloc与malloc的区别 memset函数初始化内存 free释放动态分配的内存 一.calloc函数分配内存 void *calloc( size_t nu ...
- 01- ajax, 登录验证,json数据,文件上传
1.ajax简介 1.向服务器发送请求的途径 # 向服务器发送请求的途径 1. 浏览器地址栏,默认get请求 2. form表单: get请求 post请求 3. a标签,默认get请求 4. Aja ...