第二次作业

一、题目

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

二、分析

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

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

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

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

三、代码

#include<stdio.h>
#include<math.h>
#include<windows.h>
int right=0;
int wrong=0;
void plus()
{
 int x,y,z;
 x=rand()%100;
 y=rand()%100;
 printf("请回答:\n\t\t %d + %d = ",x,y);
 scanf("%d",&z);
 if(x+y==z)
 {
  printf("回答正确!\n");
  right++;
 }
 else
 {
  printf("回答错误!\n");
  wrong++;
 }
}
void subtract()
{
 int x,y,z;
 x=rand()%100;
 y=rand()%100;
 printf("请回答:\n\t\t %d - %d = ",x,y);
 scanf("%d",&z);
 if(x-y==z)
 {
  printf("回答正确!\n");
  right++;
 }
 else
 {
  printf("回答错误!\n");
  wrong++;
 }
}
void multiply()
{
 int x,y,z;
 x=rand()%100;
 y=rand()%100;
 printf("请回答:\n\t\t %d * %d = ",x,y);
 scanf("%d",&z);
 if(x*y==z)
 {
  printf("回答正确!\n");
  right++;
 }
 else
 {
  printf("回答错误!\n");
  wrong++;
 }
}
void divide()
{
 int x,y,z;
 x=rand()%100;
 y=rand()%100;
 printf("请回答:\n\t\t %d / %d = ",x,y);
 scanf("%d",&z);
 if(x/y==z)
 {
  printf("回答正确!\n");
  right++;
 }
 else
 {
  printf("回答错误!\n" );
  wrong++;
 }
}
void main()
{
 int choise;
 int p=0;
 printf("\n\t\t\t欢迎进入小学四则运算\n\n");
 while(1)
 {
  printf("请选择:\n");
  printf("\t\t\t  加法运算(请输入1)\n");
  printf("\t\t\t  减法运算(请输入2)\n");
  printf("\t\t\t  乘法运算(请输入3)\n");
  printf("\t\t\t  除法运算(请输入4)\n");
  printf("\t\t\t  退出运算(请输入5)\n");
  if(p==0)
   scanf("%d",&choise);
  switch(choise)
  {
  case 1:
   plus();break; 
  case 2:
   subtract();break;   
  case 3:
   multiply(); break;  
  case 4:
   divide(); break;  
  case 5:
   return;
  }
  printf("\n\t\t\t继续该运算?(请输入1)\n");
  printf("\n\t\t\t重新选择?(请输入2)\n");
  printf("\n\t\t\t退出运算?(请输入3)\n");
  scanf("%d",&p);
  if(p==1)
   p=1;
  else if(p==2)
   p=0;
  else if(p==3)
   break;
  else
   printf("输入指令有误!请重新输入!\n");
 }
 printf("做对 %d 道\n做错 %d 道\n",right,wrong);
}

四、程序效果截图

  

 

五、PSP耗时统计

PSP

Personal Software

Process Stages

Time(%)

Senior

Student

Time(%)

SDE

Plannig 计划 10 8
Analysis 需求分析 10 8
Design Spec 生成设计文档 3 6
Design Review 设计复审 4 6
Coding Standard 代码规范 2

2

 

 

 

 

 

 

 

 

 

 

 

 

六、总结

      通过这次作业,让我尝试到了软件开发是一件挺辛苦的事。该软件能够完成简单的小学四则运算,我觉得很不错。例如,可根据自己的需要选择所需的四则运算符号(加、减、乘、除),根据用户选择的运算符号,系统可自动生成两个随机数,而且可对用户输入的运算结果进行判断对错并统计对错数量等。当然,它同时也存在着一些不足之处。比如说,产生的两个随机数均为整数,但在计算除法时,结果可能会出现小数,而软件会将计算所得结果自动化为整数,导致结果错误,这是还需改进的地方。所有我会继续努力,争取将它更加完善。

 

posted @ 2015-04-10 20:58  胡贵玲  阅读(177)  评论(0编辑  收藏  举报