用C++编写一个能出简单加减运算题的程序 5
用线性同余法生成随机数序列的公式为:rk=(multiplier*rk-1+increment)%modulus序列中的每个数rk都可以由它的前一个数rk-1计算出来。例...
用线性同余法生成随机数序列的公式为:
rk= (multiplier *rk-1+
increment) % modulus
序列中的每个数rk都可以由它的前一个数rk-1计算出来。例如,如果有:
rk=(25173*rk-1十13 849) % 65 536
则可以产生65 536个各不相同的整型随机数。设计一个函数作为随机数生成器,生成1位或2位的随机数。
利用这个随机数生成器,编写一个小学生学习四则运算的练习程序,要求:
D 可以进行难度选择,一级难度只用1位数,二级难度用2位数;
2) 可以选择运算类型,包括加、减、乘、除等;
3 给出错误提示;4 可以统计成绩。 展开
rk= (multiplier *rk-1+
increment) % modulus
序列中的每个数rk都可以由它的前一个数rk-1计算出来。例如,如果有:
rk=(25173*rk-1十13 849) % 65 536
则可以产生65 536个各不相同的整型随机数。设计一个函数作为随机数生成器,生成1位或2位的随机数。
利用这个随机数生成器,编写一个小学生学习四则运算的练习程序,要求:
D 可以进行难度选择,一级难度只用1位数,二级难度用2位数;
2) 可以选择运算类型,包括加、减、乘、除等;
3 给出错误提示;4 可以统计成绩。 展开
1个回答
展开全部
#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
#define MAXOP 100
#define NUMBER '0'
int getop (char [] );
void push (double);
double pop(void);
int getch(void);
void ungetch(int);
int getop(char s[])
{
int i,c;
while ((s[0]=c=getch())==' '|| c=='\t');
s[1]='\0';
if(!isdigit(c)&&c!='.')
return c;
i=0;
if(isdigit(c))
while (isdigit(s[++i]=c=getch()));
if (c=='.')
while (isdigit(s[++i]=c=getch()));
s[i]='\0';
if (c!=EOF)
ungetch(c);
return NUMBER;
}
#define BUFSIZE 100
char buf[BUFSIZE];
int bufp=0;
int getch(void)
#include <stdlib.h>
#include <ctype.h>
#define MAXOP 100
#define NUMBER '0'
int getop (char [] );
void push (double);
double pop(void);
int getch(void);
void ungetch(int);
int getop(char s[])
{
int i,c;
while ((s[0]=c=getch())==' '|| c=='\t');
s[1]='\0';
if(!isdigit(c)&&c!='.')
return c;
i=0;
if(isdigit(c))
while (isdigit(s[++i]=c=getch()));
if (c=='.')
while (isdigit(s[++i]=c=getch()));
s[i]='\0';
if (c!=EOF)
ungetch(c);
return NUMBER;
}
#define BUFSIZE 100
char buf[BUFSIZE];
int bufp=0;
int getch(void)
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询