小学生四则运算
小学生练习题四则运算包括真分数的四则运算和整数的四则运算,我写了八个函数,分别是整数加法、整数减法、整数乘法、整数除法、真分数加法,真分数减法,真分数乘法和真分数除法,利用随机函数rand()产生随机数,可以随意练习多少道题目,写完这个程序用了2个小时,主要用在调试上了。
#include<stdio.h>
#include<stdlib.h>
void add(int a,int b) //整数加法
{
a=rand()%100;
b=rand()%100;
printf("%d+%d=",a,b);
return ;
}
void sub(int a,int b) //整数减法
{
int c;
a=rand()%100;
b=rand()%100;
if(a<b)
{
c=a;
a=b;
b=c;
}
printf("%d-%d=",a,b);
return ;
}
void mul(int a,int b) //整数乘法
{
a=rand()%100;
b=rand()%100;
printf("%d*%d=",a,b);
return ;
}
void mq(int a,int b) //整数除法
{
a=rand()%100;
b=rand()%100;
while(b==0)
b=rand()%100;
printf("%d/%d=",a,b);
return ;
}
void add1(int a,int b,int c,int d) //真分数加法
{
int t;
a=rand()%100;
b=rand()%100;
c=rand()%100;
d=rand()%100;
while(b==0)
{
b=rand()%100;
}
while(d==0)
{
d=rand()%100;
}
if(a>b)
{
t=a;
a=b;
b=t;
}
if(c>d)
{
t=c;
c=d;
d=t;
}
printf("%d/%d+%d/%d=",a,b,c,d);
return ;
}
void sub1(int a,int b,int c,int d) //真分数减法
{
int t;
a=rand()%100;
b=rand()%100;
c=rand()%100;
d=rand()%100;
while(b==0)
{
b=rand()%100;
}
while(d==0)
{
d=rand()%100;
}
if(a>b)
{
t=a;
a=b;
b=t;
}
if(c>d)
{
t=c;
c=d;
d=t;
}
if(a/b>c/d)
printf("%d/%d-%d/%d=",a,b,c,d);
else
printf("%d/%d-%d/%d=",c,d,a,b);
return ;
}
void mul1(int a,int b,int c,int d) //真分数乘法
{
int t;
a=rand()%100;
b=rand()%100;
c=rand()%100;
d=rand()%100;
while(b==0)
{
b=rand()%100;
}
while(d==0)
{
d=rand()%100;
}
if(a>b)
{
t=a;
a=b;
b=t;
}
if(c>d)
{
t=c;
c=d;
d=t;
}
printf("%d/%d*%d/%d=",a,b,c,d);
return ;
}
void mq1(int a,int b,int c,int d) //真分数除法
{
int t;
a=rand()%100;
b=rand()%100;
c=rand()%100;
d=rand()%100;
while(b==0)
{
b=rand()%100;
}
while(d==0)
{
d=rand()%100;
}
if(a>b)
{
t=a;
a=b;
b=t;
}
if(c>d)
{
t=c;
c=d;
d=t;
}
printf("(%d/%d)/(%d/%d)=",a,b,c,d);
return ;
}
void main()
{
int n,a,b,c,d;
printf("欢迎进入小学生算数练习系统!\n");
while(1)
{
scanf("%d",&n);
switch(n)
{
case 1: add(a,b);break;
case 2: sub(a,b);break;
case 3: mul(a,b);break;
case 4: mq(a,b);break;
case 5: add1(a,b,c,d);break;
case 6: sub1(a,b,c,d);break;
case 7: mul1(a,b,c,d);break;
case 8: mq1(a,b,c,d);break;
default:printf("input error!");break;
}
}
}
这个代码虽然实现了基本功能但还有很多缺点,比如不够优化,功能不够完善,希望在以后学习中不断提高,写出更加高效完善的代码。