您的位置:首页 > 其它

小学生的四则运算题

2016-03-07 14:14 162 查看
今天老师要求编写一个程序,该程序实现随机出30道小学生的四则运算题,包括分数。

编程思想:判断是哪种运算,当为整数运算时,只需判断除数是否为0,是修改除数,然后直接输出

当为分数运算时,被除数只需判断分母,除数需要判断分子与分母,三者都不能为0

//chenchang 20143051    2016.3.7
#include<iostream>
using namespace std;
int sui1()//此函数用于随机整数的选出
{
int m=rand()%100;//模100,取0-99中的整数
return m;
}
char sui2()//此函数用于选出随机运算符
{
int m=rand()%4;
if(m==0)return '+';
else if(m==1) return '-';
else if(m==2) return '*';
else if(m==3) return '/';
}
void main()
{
for(int i=0;i<30;i++)
{
int zheng=rand()%2;
if(zheng==1)//整数计算
{
int shu1=sui1();
char fu1=sui2();
int shu2=sui1();
while(shu2==0&&fu1=='/')//判断当为除法时,分母为零,重新选择一个分母
{
shu2=sui1();
}
cout<<"第 "<< i+1 <<" 个式子:"<<shu1<<fu1<<shu2<<"="<<endl;
}
else {
int zi1=sui1();
int mu1=sui1();
while(mu1==0)//分母为零,重新选择一个分母
{
mu1=sui1();
}
char fu2=sui2();
////////////
int zi2=sui1();
int mu2=sui1();
while(mu2==0)//分母为零,重新选择一个分母
{
mu2=sui1();
}
while(zi2==0&&fu2=='/')////判断当为除法时,第二个分数的分子为零,重新选择一个分子
{
zi2=sui1();
}
cout<<"第 "<< i+1 <<" 个式子:"<<zi1<<"/"<<mu1<<fu2<<zi2<<"/"<<mu2<<"="<<endl;
}
}
}


结果截图:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: