软件工程(第二次作业)

一、题目

请编写一个能自动生成小学四则运算题目的 “软件”。 让程序能接受用户输入答案,并判定对错。 最后给出总共 对/错 的数量。

二、需求分析

1、此软件可选择所需的四则运算符号,即加、减、乘、除。

2、对于用户选择的运算符号可自动生成两个随机数的整数想x,y。

3、该软件可通过用户手动输入运算结果,判断用户答案的对错。

4、对于用户答案的正确与否可进行统计对错数量。

三、设计

对于小学生做题数量及正确和错误题数可进行统计,帮助用户统计答题数。

四、代码

#include "stdio.h"
#include"windows.h"
int right=0,wrong=0;
void jia(){
    int x,y,z;
    x=rand()%100;
    y=rand()%100;
    printf("请输入您的答案:%d+%d=",x,y);
    scanf("%d",&z);
    if(x+y!=z)
    {
        printf("回答错误!\n");
        wrong++;
    }
    else
    {
        printf("回答正确!\n");
        right++;
    }
 }
void jian(){
    int x,y,z;
    x=rand()%100;
    y=rand()%100;
    printf("请输入您的答案:%d-%d=",x,y);
    scanf("%d",&z);
    if(x-y!=z)
    {
        printf("回答错误!\n");wrong++;
    }
    else
    {
        printf("回答正确!\n");
        right++;
    }
 }
void cheng(){
    int x,y,z;
    x=rand()%100;
    y=rand()%100;
    printf("请输入您的答案:%d*%d=",x,y);
    scanf("%d",&z);
    if(x*y!=z)
    {
        printf("回答错误!\n");
        wrong++;
    }
    else
    {
        printf("回答正确!\n");
        right++;
    }
 }
void chu(){
    int x,y,z;
    x=rand()%100;
    y=rand()%100+1;
    printf("请输入您的答案:%d/%d=",x,y);
    scanf("%d",&z);
    if(x/y!=z)
    {
        printf("回答错误!\n");
        wrong++;
    }
    else
    {
        printf("回答正确!\n");
        right++;
    }
}

void main(){
    int choise,sum=0;
    printf("\n\n\t\t欢迎来到我的C语言四则运算程序系统!\n");
    system("pause");
    system("cls");
    while(1)   {
        printf("\n\n\t\t\t请选择计算符号:\n加法(输入1)\t减法(输入2)\t乘法(输入3)\t除法(输入4)\n");
        if(sum==0)scanf("%d",&choise);
        switch(choise)    {
        case 1: jia();break;
        case 2:jian();break;
        case 3:cheng();break;
        case 4:chu();break;
        }
        printf("请您选择:\t继续(输入1)\t重新(输入2)\t退出(输入3)\n");
        scanf("%d",&sum);
        if(sum==1)sum=1;
        if(sum==2)sum=0;
        if(sum==3)break;
    }
    printf("您一共做了%d道题,正确%d道,错误%d道!\n",right+wrong,right,wrong);
    system("pause");
}

五、运行代码截图

六、psp计时

七、总结

对于本次作业,我还存在一些问题,例如,对于写代码还不是很熟炼,加上对psp计时也不是很了解。不过此次作业给我的最大收获是对软件工程这门课有了一点点兴趣。

时间: 2024-10-13 08:06:53

软件工程(第二次作业)的相关文章

软件工程 第二周作业

##软件工程第二周作业 提出问题 1. 一般来说,想要自己的程序跑得又快又好,就要减少函数的反复调用,但有所得则必有所失,效能提高就有可能伴随着程序的稳定性的降低,这两者应该如何权衡呢? 2. 关于5.3.5 老板驱动的流程,这种开发流程模式存在着一些问题,那要如何解决这些问题呢? 这种模式当然也有它的问题. 领导对许多技术细节是外行. 领导未必懂得软件项目的管理,领导的权威影响了自由的交流和创造. 领导最擅长的管理方式是行政命令,这未必能管好软件团队或任何需要创造力的团队. 领导的精力有限,领

2017秋-软件工程第二次作业

本周因为个人缘故,参加社团活动作业没能及时完成.对此我表示,做过就不后悔,至少我觉得生活是丰富多彩的,错过的时间就应该努力赶上!夜深人静的时候总是可以让人反省自己.本次作业我只实现了第一个功能和第二个功能的部分.对此我表示很不满,但是时间紧迫.个人能力有限,以至于自己没能让自己的软件看起来完美. 第二次作业的内容非常有趣,这也是我一直想做的一件事情,统计一篇文章里的字词.我知道自己的编程能力较差.距离完成提交时间很近,自己手写全部是不能及时按照约定提交的,于是就尝试借鉴前人的代码.第一晚的努力各

软件工程第二次作业--师兄采访

我采访的是李权师兄,虽然之前也有人采访过他,问题都是同样的问题,不过我挖掘出了和其他同学不一样的信息. 问题:    师兄,当时你们做的项目是什么,有多少用户, 现在还有人用吗? 李权师兄: 当时我们的项目名是约跑APP,当时用户有8人.在用户的手机上测试通过,能让用户找到一起跑步的小伙伴.现在已经没有人用了. 追问:该app给用户提供了什么样的服务? 李权师兄:app能提供给用户认识新朋友的平台.通过app,用户可以约人一起跑步. 第二个问题:师兄这个项目能否给我们团队继续开发,源代码还有么?

软件工程第二次作业(王伟东)

一周的时光转瞬即逝,第二周的作业也悄悄地开始了.杨老师的一言一行都深深地刻在我的心里,"不迟到"是做人做事的根本,努力则是成就人生的基石.正如<道德经>中所言"天地不仁,视万物为刍狗",上天对待世间万物是公平的,从来都是不偏不倚,只有勤奋好学的人才会得到垂青和奖赏. ㈠词频统计的四个功能 ①首先控制台输入内容到文件中,再对文件进行词频统计: ②命令行输入英文作品名,然后统计作品词频: ③命令行输入英文作品文件的目录名,再批量统计: ④从控制台读入英文单篇

软件工程第二次作业——git的使用

1. 参照 http://www.cnblogs.com/xinz/p/3803109.html 的第一题,每人建立一个GitHub账号,组长建立一个Project,将本组成员纳入此Porject中的Collaborators,并添加[email protected] 为Collaborator.   邓杰: 陈宗雷: (1)在之前已经建立了自己的github账号,账号名称为zongleichen. (2)以合作者身份加入到组长建立的项目: 2.   每人自己建立一个HelloWorld项目,练

软件工程——第二次作业(2)

施工中-- 作业要求:https://edu.cnblogs.com/campus/nenu/SWE2017FALL/homework/922 项目要求是编写出一个拥有"词频统计"功能的小程序,作为一个小程序,若只是实现基本的词频统计功能,其实并不是很难.但是,如果再附加一些需求和功能的话就会让我感到有点难度了,更何况为了以后课程的要求,我选择使用Visual Studio 2015编译器和C#语言这两种从未学过的工具,在4-5天之内共10个小时左右(预计,但是实际上确实是花了更多时间

软件工程 — 第二次作业

一 :对软件工程的疑惑 1. 学习软件工程需要哪些基础? 2.程序设计语言没学好有关系吗? 3. 软件工程的发展前景? 4. 软件工程具体做什么? 5. 软件工程可作为物联网的应用层需要哪些协议来处理 二:选取三种软件并说明特点 1.支付宝 (1)优点:支付方便快捷,使用时效率高        缺点:有时会出现不安全现象,相比银行而言会存在财产丢失的问题        通过余额宝的高额利息,和即时存取的便利吸引客户,以盈利为目的 (2)经人介绍使用,自己下载 (3)定期维护更新版本 (4)开创时

软件工程第二周作业:代码规范和代码复审

0x01 :代码规划的要求 Q:这些规范都是官僚制度下产生的浪费大家的编程时间.影响人们开发效率, 浪费时间的东西.(反驳) 首先,我们需要明确编码规范的定义,编码规范同时包括了编码风格和其它规范(代码设计上的规范,如设计模式.程序设计.模块之间的逻辑关联等). 编码风格,牵扯到“缩进.空格使用.注释.命名习惯”等多方面的因素,是依致特定编程语言制定的软件工程开发的“约定”,而相同的编码风格,可以使得软件开发过程中轻松浏览任意一段代码,充分保证不同的开发人员能够依据统一的编码格式轻松理解代码的逻

软件工程第二次作业 词频统计

1.项目名称:词频统计 2.代码地址:https://coding.net/u/songyuu/p/python_wf/git 3.代码如下: 1 import os 2 import re 3 import collections 4 #print(os.getcwd()) #显示wf.py路径 5 #print(os.listdir())#显示目录下的文件 6 file_name=input("wf ") 7 if not os.path.isfile(file_name+'.tx

软件工程第二次作业—结对编程

一. 作业要求 两人组成一队,进行结对编程. 从第一次软件工程作业中选出一人的作业作为这次作业的基础. 设计一个图形界面(GUI)的四则运算应用程序,可以是PC桌面的图形界面程序.网页程序或者手机程序. 设计的应用程序可以完成加法.减法.乘法.除法运算. 应用程序可以完成真分数的四则运算. 例如:1/2 + 1/3 = 5/6 例如:1/5 + 3/10 = 1/2(而不是5/10) 例如:1'1/3 - 2/3 = 2/3 (是1'1/3而不是4/3,注意:" ' "为1'1/3整数