小学生二年级四则运算2.0

在原有基础之上,希望加上分数的四则运算。

此次编程实现功能:30道四则运算题的编写(不重复编写)

支持整型四则运算,还有分数四则运算

可制定出题的数量

 1 //开始编程时间:15:18
 2 //结束编程时间:16:42
 3 #include <iostream>
 4 #include <time.h>
 5 #include <stdlib.h>
 6 using namespace std;
 7 #define max 100
 8 #define n 30
 9 int main()
10 {
11          srand(time(NULL));       //seed
12          int num1,num2,num3,num4;
13          int i,j,m;
14          char ysf[4]={‘+‘,‘-‘,‘*‘,‘/‘};
15          for(m=0;m<n;m++)
16          {
17              j=rand()%2;  // 生成0或1
18              if(j==0)  // 整型四则运算
19              {
20                 i=rand()%4;   // 生成0-3的随机数
21                 num1=rand() % max;  // 生成0-max-1的随机数
22                 num2=rand() % max;
23                 switch(i){
24                     case 0: //整数相加
25                         cout<<num1<<ysf[i]<<num2<<"="<<endl;
26                     break;
27                     case 1: //整数相减
28                         cout<<num1<<ysf[i]<<num2<<"="<<endl;
29                     break;
30                     case 2://整数相乘
31                         cout<<num1<<ysf[i]<<num2<<"="<<endl;
32                     break;
33                     case 3: //整数相除
34                         while(num2==0)
35                            {//除数不为0
36                               num2=rand() % max;;
37                            }
38                         cout<<num1<<ysf[i]<<num2<<"="<<endl;
39                     break;
40                     default:
41                     break;}
42              }
43               else if(j==1)  // 分数四则运算
44                 {
45                     i=rand()%4;
46                     num1=rand() % max;
47                     num2=rand() % max;
48                     while(num2==0||num1>=num2){//分数分母不为0并且分子不能大于分母
49                         num1=rand() % max;
50                         num2=rand() % max;
51                      }
52                     num3=rand() % max;
53                     num4=rand() % max;
54                     while(num4==0||num3>=num4){//分数分母不为0并且分子不能大于分母
55                         num3=rand() % max;
56                         num4=rand() % max;
57                      }
58                     switch(i){
59                         case 0:        //分数相加
60                             cout<<num1<<"/"<<num2<<ysf[i]<<num3<<"/"<<num4<<"="<<endl;
61                         break;
62                         case 1:        //分数相减
63                             cout<<num1<<"/"<<num2<<ysf[i]<<num3<<"/"<<num4<<"="<<endl;
64                         break;
65                         case 2:        //分数相乘
66                             cout<<"("<<num1<<"/"<<num2<<")"<<ysf[i]<<"("<<num3<<"/"<<num4<<")"<<"="<<endl;
67                         break;
68                         case 3:       //分数相除
69                             while(num3==0){//作为分母的分数不为0
70                                 num3=rand() % max;
71                             while(num3>=num4){
72                                 num3=rand() % max;
73                                 num4=rand() % max;
74                                 }
75                              }
76                            cout<<"("<<num1<<"/"<<num2<<")"<<ysf[i]<<"("<<num3<<"/"<<num4<<")"<<"="<<endl;
77                        break;
78                        default:
79                        break;
80                        }
81                    }
82          }
83 }

编程运行截图如下:

原文地址:https://www.cnblogs.com/pcyyyyy/p/9757374.html

时间: 2024-10-01 07:57:48

小学生二年级四则运算2.0的相关文章

小学二年级四则运算题

一.题目要求 产生300道小学二年级的四则运算的数学题,减法不能出现负数,除法要整除. 二.编写过程 编写产生30道小学二年级的四则运算的数学题,用rand()产生随机数,和随机的符号,在除法运算中在被除数不为零的情况下利用一组随机数来产生被除数和除数是被除数的整数倍,这样保证了除法的整除,减法要先判断两个随机数的大小,输出的结果为大数减去小数.然后利用for循环30次输出30道题目. 三.程序运行 四.程序代码 #include<stdio.h>#include<stdlib.h>

悲催的二柱子们做小学二年级四则运算题(Javaweb)

1 <%@ page language="java" contentType="text/html; charset=utf-8" 2 pageEncoding="utf-8"%> 3 <!DOCTYPE html> 4 <html> 5 <head> 6 <body background="C:\Users\26624\Desktop/beijing.jpg"> 7

30道小学二年级四则运算题

思路与体会:用rand函数产生随机数32767/327约等于100.2.排除了除数是0的错误, 但是仍有缺陷:减法会出现不够减结果是负数的情况! 运行结果总出现闪退情况,查阅资料后加了system("pause") 运行环境:vs2013 源代码: #include<iostream> using namespace std; #include<stdio.h> #include<stdlib.h>int rak(){ return rand() /

二柱子四则运算2.0版本

支持真分数的四则运算 可以自定义题目数量 源代码: 1 #include<stdio.h> 2 #include<iostream> 3 #include<time.h> 4 #include<string> 5 using namespace std; 6 int main() 7 {srand( (unsigned)time( NULL ) ); 8 int i,k,p,v,a,b; 9 int *s1,*s2,*s3; 10 char n; 11 st

第一次作业--二年级四则运算

编写程序的过程:以自己的能力和自己会的知识,编写了几个小时的代码,基本满足了老师的要求,随机产生整数,并且随机出加减乘除,随机数存入数组中,把程序运算的结果与客户输入的数据比较判断对错,最后利用循环输出多道题. 源代码如下: #include<stdio.h>#include<iostream> #include <time.h> using namespace std;int main(int argc, char* argv[]){ int a[30], b[30]

二年级四则运算扩展

本次要求增加难度:1可指定题目数量 2 支持真分数运算 运行代码 #include<stdio.h>  #include<Windows.h>  #include<time.h>  void main()  {      int a, b, c, d,i,m,n;      float p, q;      srand(unsigned( time(NULL)));      for (i = 0; i < 30; i++)      {         a = 

二年级四则运算的扩展,可以指定题目数量,并可支持真分数的运算

新加的要求: 1.可指定题目数量: 2.支持真分数运算. 代码编写: #include<stdio.h>  #include<Windows.h>  #include<time.h>  void main()  {      int a, b, c, d,i,m,n;      float p, q;      srand(unsigned( time(NULL)));      for (i = 0; i < 30; i++)      {         a 

关于运用C语言自动生成三十道小学二年级四则运算

#include <stdio.h>#include <stdlib.h>#include <time.h> int main(){ int i = 0; srand((unsigned)time(NULL)); while(i<30) { int a = rand()%100; int b = rand()%100; int j; j = rand()%4; printf("%d", a); switch(j) { case 0: print

二年级的30道四则运算题

想法思路:(1)在1-100之内产生两个随机数,并且随机的进行四则运算: (2)循环进行30次,产生30道题: (3)二年级时,没有学到分数和负数,减数要小于或等于被减数. 源程序代码: #include "stdafx.h" #include"iostream.h" #include"stdlib.h" #include"math.h"#include"time.h" int main(int argc,