对于四则运算编程自己的过程问题

      需求分析:随机产生式子,然后在判断计算的正确。

        编程思路:

        本次作业是随机产生四则运算,利用rang函数,随机产生1—10的数字,再利用switch函数进行符号的运算,但是在除法这个运算,不会编程,只出现两个简单的数的除法运算况且是商和余数的形式,再交作业的过程中,交错了好几次程序,所以改了好几次。这个程序写得有点简单,况且一点也不人性化,希望通过不断地编程能让自己的能力不断的提高,写一些“高端的代码”实行更强大的功能。

 

但是在执行的过程中的结果中还是有错误,例如倒数截图倒数第三行,应该是-12但是程序认为我答案是错误的,还有会存在负数。这些都是不断de完善这个程序。

本次的程序,写得十分简单,正在一步步的努力完善。

 

#include "stdafx.h"
#include "stdlib.h"
#include <stdio.h>
int main()
{
int i,a,b,c,d,e,x,y,z,p,q,h,w,g,m,n;
for(i = 0;i < 30;i++)
{
a = rand()%100; //随机产生的输字a
b = rand()%100; //随机产生的输字b
d = rand()%100; //随机产生的输字d
e = rand()%100; //随机产生的输字e
switch(c=rand()%10)
{
case 0:
{
while(b!=0) //简单的二元除法,判断分母是否为0
{
printf("%d/%d=",a,b);
scanf("%d %d",&p,&q);
if(a/b==p&&a%b==q) //判断商与余数
{
printf("正确\n");
}
else{
printf("错误 ");
printf("%d %d\n",a/b,a%b);
}
break;
}
case 1:
{
printf("两数相加%d + %d =",a,b); //简单的二元加法
scanf("%d",&x);
if(a+b==x)
{
printf("正确\n");
}
else
{
printf("错误 ");
printf("%d\n",a+b);
}
break;
}
case 2:
{
printf("两数相减%d - %d =",a,b); //简单的二元减法
scanf("%d",&y);
if(a-b==y)
printf("正确\n");
else{
printf("错误 ");
printf("%d\n",a-b);
}
break;
}
case 3:
{
printf("两数相乘%d*%d=",a,b); //简单的二元乘法
scanf("%d",&z);
if(a*b==z)
printf("正确\n");
else{
printf("错误 ");
printf("%d\n",a*b);
}
break;
}
case 4:
{
printf("三数混合相加减%d + %d - %d =",a,b,d); //简单的三元加减法
scanf("%d",&h);
if(a+b-c==h)
printf("正确\n");
else{
printf("错误 ");
printf("%d\n",a+b-c);
}
break;
}
case 5:
{
printf("三数混合相加乘%d + %d * %d =",a,b,d); //简单的三元加(减)法乘法
scanf("%d",&w);
if(a+b*c==w)
printf("正确\n");
else{
printf("错误 ");
printf("%d\n",a+b*c);
}
break;
}
case 6 :
{
printf("三数混合%d + (%d - %d) =",a,b,d); //简单的带括号三元加(减)法
scanf("%d",&g);
if(a+(b-c)==g)
printf("正确\n");
else{
printf("错误 ");
printf("%d\n",a+(b-c));
}
break;
}
case 7 :
{
printf("三数混合%d * %d - %d =",a,b,d); //简单的三元乘加(减)法
scanf("%d",&m);
if(a*b-c==m)
printf("正确\n");
else{
printf("错误 ");
printf("%d\n",a*b-c);
}
break;
}
case 8 :
{
printf("三数混合带括号%d * (%d - %d) =",a,b,d); //简单的三元带括号乘加(减)法
scanf("%d",&n);
if(a*(b-c)==n)
printf("正确\n");
else{
printf("错误 ");
printf("%d\n",a*(b-c));
}
break;
}
case 9 :
{
printf("四数混合%d * (%d - %d) + %d =",a,b,d,e); //简单的四元带括号加减乘除混合运算
scanf("%d",&n);
if(a*(b-c)+d==n)
printf("正确\n");
else{
printf("错误 ");
printf("%d\n",a*(b-c)+d);
}
break;
}
}
}
}
}

 

posted @ 2016-03-15 20:13  super王栋  阅读(428)  评论(3编辑  收藏  举报