个人作业-四则运算题目生成程序
四则运算
一.作业规范要求
博客班级 | https://edu.cnblogs.com/campus/ahgc/AHPU-se-JSJ18 |
作业要求 | https://edu.cnblogs.com/campus/ahgc/AHPU-se-JSJ18/homework/11377 |
作业目标 | 学习markdown的语法编辑及培养编程能力 |
学号 | 3180701301 |
二.题目要求
写一个能自动生成小学四则运算题目的程序,然后在此基础上扩展:
1)除了整数以外,还要支持真分数的四则运算,例如:1/6+1/8=7/24
2)程序要求能处理用户的输入,判断对错,累积分数
3)程序支持可以由用户自行选择加、减、乘、除运算
4)使用-n参数控制生成题目的个数,例如Myapp.exe -n 10,将生成10个题目
三.代码提交
加法
void add() //整数的加法 { int a,b,c; a=rand()%100; //随机生成 b=rand()%100; printf("请回答:\n\t\t %d + %d = ",a,b); scanf("%d",&c); if(a+b==c) { printf("回答正确!\n"); right++; } else { printf("回答错误!\n"); wrong++; } }
void Add() //真分数的加法 { int zhenfenshu1_m=0, zhenfenshu1_z=0, zhenfenshu2_m=0, zhenfenshu2_z=0; int a,b,c; zhenfenshu1_m=0+rand()%100; zhenfenshu1_z=0+rand()%100; //判断产生的真分数正确性 while(zhenfenshu1_m<zhenfenshu1_z) { zhenfenshu1_m=0+rand()%100; zhenfenshu1_z=0+rand()%100; } zhenfenshu2_m=0+rand()%100; zhenfenshu2_z=0+rand()%100;
减法
void minu() //整数减法 { int a,b,c; a=rand()%100; b=rand()%100; printf("请回答:\n\t\t %d - %d = ",a,b); scanf("%d",&c); if(a-b==c) { printf("回答正确!\n"); right++; } else { printf("回答错误!\n"); wrong++; } } void Minu() //真分数的减法 { int zhenfenshu1_m=0, zhenfenshu1_z=0, zhenfenshu2_m=0, zhenfenshu2_z=0; int a,b,c; zhenfenshu1_m=0+rand()%100; zhenfenshu1_z=0+rand()%100; //判断产生的真分数正确性 while(zhenfenshu1_m<zhenfenshu1_z) { zhenfenshu1_m=0+rand()%100; zhenfenshu1_z=0+rand()%100; } zhenfenshu2_m=0+rand()%100; zhenfenshu2_z=0+rand()%100;
乘法
void mul() //整数乘法 { int a,b,c; a=rand()%100; b=rand()%100; printf("请回答:\n\t\t %d * %d = ",a,b); scanf("%d",&c); if(a*b==c) { printf("回答正确!\n"); right++; } else { printf("回答错误!\n"); wrong++; } } void Mul() //真分数的乘法 { int zhenfenshu1_m=0, zhenfenshu1_z=0, zhenfenshu2_m=0, zhenfenshu2_z=0; int a,b,c; zhenfenshu1_m=0+rand()%100; zhenfenshu1_z=0+rand()%100; //判断产生的真分数正确性 while(zhenfenshu1_m<zhenfenshu1_z) { zhenfenshu1_m=0+rand()%100; zhenfenshu1_z=0+rand()%100; } zhenfenshu2_m=0+rand()%100; zhenfenshu2_z=0+rand()%100;
除法
void di() //整数除法 { int a,b,c; a=rand()%100; b=rand()%100; printf("请回答:\n\t\t %d / %d = ",a,b); scanf("%d",&c); if(a/b==c) { printf("回答正确!\n"); right++; } else { printf("回答错误!\n"); wrong++; } } void Di() //真分数的除法 { int zhenfenshu1_m=0, zhenfenshu1_z=0, zhenfenshu2_m=0, zhenfenshu2_z=0; int a,b,c; zhenfenshu1_m=0+rand()%100; zhenfenshu1_z=0+rand()%100;
运行截图
四、个人小结
革命尚未成功,同志仍需努力!
psp2.1 | 任务内容 | 计划完成需要的时间(min) | 实际完成需要的时间(min) |
---|---|---|---|
Planning | 计划 | 10 | 30 |
Estimate | 估计这个任务需要多少时间,并规划大致工作步骤 | 5 | 10 |
Development | 开发 | 120 | 360 |
Analysis | 需求分析(包括学习新技术 | 10 | 30 |
Design Spec | 生成设计文档 | 15 | 40 |
Design Review | 设计复审 | 5 | 5 |
Coding Standard | 代码规范 | 3 | 3 |
Design | 具体设计 | 10 | 50 |
Coding | 具体编码 | 100 | 300 |
Code Review | 代码复审 | 5 | 10 |
Test | 测试(自我测试,修改代码,提交修改) | 10 | 10 |
Reporting | 报告 | 10 | 10 |
Test Report | 测试报告 | 3 | 2 |
Size Measurement | 计算工作量 | 3 | 3 |
Postmortem & Process Improvement Plan | 事后总结,并提出过程改进计划 | 3 | 3 |