四则运算

| 博客班级 | https://edu.cnblogs.com/campus/ahgc/AHPU-SE-19 |
| ---- | ---- | ---- |
| 作业要求 | https://edu.cnblogs.com/campus/ahgc/AHPU-SE-19/homework/11376 |
| 作业目标 | 写一个能自动生成小学四则运算题目的程序 |
| 学号 | 3190704227 |

一.题目要求
写一个能自动生成小学四则运算题目的程序,然后在此基础上扩展:
1)除了整数以外,还要支持真分数的四则运算,例如:1/6+1/8=7/24
2)程序要求能处理用户的输入,判断对错,累积分数
3)程序支持可以由用户自行选择加、减、乘、除运算
4)使用-n参数控制生成题目的个数,例如Myapp.exe -n 10,将生成10个题目

二.代码

include <stdio.h>

include <stdlib.h>

include <time.h>

int sum(int a,int b)/系统计算加法/
{
int answer1;
answer1=a+b;
return answer1;
}
int dive(int a,int b)/系统计算减法/
{
int answer1;
answer1=a/b;
return answer1;
}
int sub(int a,int b)/系统计算乘法/
{
int answer1;
answer1=a-b;
return answer1;
}
int mult(int a,int b)/系统计算除法/
{
int answer1;
answer1=ab;
return answer1;
}
int main()
{
int n,type,c,d,answer;
int x=0;
int score=0;
char ty;
printf("输入产生题目的数量:");
scanf("%d",&n);
srand(time( NULL ));
printf("输入想完成的题型(+-
/):");/确定题型/
scanf("%s",&ty);
if( ty == '+')
{
type=0;
}
else if( ty == '-')
{
type=1;
}
else if( ty == '*')
{
type=2;
}
else{
type=3;
}

while(x<n)    /*产生随机题目*/
{       
    c= rand()%100;
    d= rand()%100;
    switch(type)
    {
    case 0:
        printf("%d + %d =",c, d);
		scanf("%d",&answer);
		if(answer==sum(c,d))
		{
            score+=10;     /*答对积十分*/
			printf("√\n");
		}
		else{
            
			printf("×\n");
		}
		x++;
        break;
    case 1:
        printf("%d - %d =", c, d);
        scanf("%d",&answer);
        if(answer==sub(c,d))
		{
        	score+=10;
			printf("√\n");
		}
		else{
            
			printf("×\n");
		}
		x++;
        break;
    case 2:
        printf("%d * %d =",c, d);
        scanf("%d",&answer);
        if(answer==mult(c,d))
		{
			score+=10;
			printf("√\n");
		}
		else{
            
			printf("×\n");
		}
		x++;
        break;
    case 3:
        printf("%d / %d =",c, d);
        scanf("%d",&answer);
        if(answer==dive(c,d))
		{
            
			printf("√\n");
			score+=10;
		}
		else{
           
			printf("×\n");
		}
		x++;
        break;
    }
}	
printf("恭喜你获得%d积分",score);

}

三.个人小结
| psp2.1 | 任务内容 | 计划完成需要的时间(min)| 实际完成需要的时间(min)|
| ---- | ---- | ---- |---- | ---- |
| Planning | 计划 | 8|8|
| Estimate | 估计这个任务需要多少时间,并规划大致工作步骤 | 5|5|
| Development | 开发 | 120|160|
| Analysis | 需求分析(包括学习新技术) | 10|15 |
| Design Spec | 生成设计文档 | 5|5|
| Design Review | 设计复审 | 6|8|
| Coding Standard | 代码规范 | 3|3|
| Design | 具体设计 | 12|15|
| Coding | 具体编码 | 30|40|
| Code Review | 代码复审 | 10|10|
| Test | 测试(自我测试,修改代码,提交修改) |5|5|
| Reporting | 报告 | 10|15|
| Test Report | 测试报告 | 2|2|
| Size Measurement | 计算工作量 | 3|3|
| Postmortem & Process Improvement Plan | 事后总结,并提出过程改进计划 | 5|3|

posted on 2020-10-27 22:38  Benethy  阅读(75)  评论(0)    收藏  举报