首页 > 技术文章 > 结伴项目 小学生四则运算

brilliant2016 2016-09-06 22:10 原文

结伴:宫成荣 韩媛媛

需求分析:

    为小学生能够出四则运算的题,并且能对其所答的答案进行判断,如答错能显示正确答案。

部分代码:

复制代码
int calculate(int a,int b,int c)
{
    int num;
    switch(b)
    {
    case 0:num=a+c;break;
    case 1:num=a-c;break;
    case 2:num=a*c;break;
    }
    return num;
}
复制代码

使用函数对加减乘进行计算。

复制代码
char str[]="+-*/",ch;
      srand((unsigned)time(0));
      
      printf("请输入本次测试的题目数量:");        //手动输入题目数量
      scanf("%d",&num);
      ch=getchar();
      printf("保留两位小数\n");                    //输入结果如果有小数,保留两位小数
      for(i=0;i<num;i++)
      {
            a=rand()%100+1;                       //生成随机数
            b=rand()%100+1;
            n=rand()%4;
            printf("题号:%d",i+1);
            printf("\n%d %c %d=\n",a,str[n],b);
            if(n<=2)                               //加减乘的运算的生成
            {
                answer1=calculate(a,n,b);
                scanf("%d",&s1);
                ch=getchar();
                
                if(answer1==s1)
                    printf("正确\n");
                    else printf("错误 正确答案是:%d\n",answer1);
            }
            else if(n==3)                             //除法运算的生成
            {
                answer2=(float)(a)/(float)(b);
                scanf("%-5.2f",&s2);
                ch=getchar();
               
                if(answer2==s2)
                     printf("正确\n");
                else printf("错误 正确答案是:%-5.2f\n",answer2);
            }
      }
复制代码

 

运行结果:

 

个人体会:

  结伴项目算的上是一种挑战,思路不同,细节方面也不一致。最主要的问题是没考虑除法的得数,直接用整数算了。编译通过,但是结果不对,最后用条件语句改进了。 期间做了很多,失败很多,索性重新做。让人体会的编程的不容易,现在还不会分部编程,以后要好好学习。

推荐阅读