最近软工老师要我们在课堂上实现一个自动生成给小学生做数学题的程序,记录一下~ 有下列一些要求 随机出现四个运算符 每次出现1-2运算符,计算式子a op b op c 按照优先级的运算顺序不能出现负数,非整数,大于100 的数,要不他们可能遭不住 分析: 只有两个运算符,直接可以暴力先计算a op b,再按照后面op的优先级决定:继续计算op c还是a op(b op c) /* Author:Janspiry Number: Title: Tags: */ # include <bits/stdc++.h> # define inf 0x3f3f3f3f char sig [ 5 ] = "-+/*" ; int a , b , c , op1 , op2 ; int calc ( int a , int b , int op ) { switch ( sig [ op ] ) { case '/' : if ( b == 0 || a % b ) return inf ; //特判除法 return a / b ; case '*' : return a * b ; case '-' : / / if ( a < b ) return inf ; return a - b ; default : return a + b ; } } void init ( ) { / /