软件工程课后作业一之30道随机四则运算程序

题目:编写一道程序实现一个小学二年级学生的30道随机四则运算的程序,尽量完善,符合实际情况

 1 #include <stdlib.h>
 2 #include <stdio.h>
 3 #include <conio.h>
 4 #include <time.h>
 5 int main()
 6 {
 7     int a = 0;
 8     int b = 0;
 9     int mode = 0;//0:加  1:减   2:乘  3:除
10     int c = 0;
11     int result = 0;
12     int score = 0;
13     int i = 0;
14     srand((unsigned)time( NULL ) ); //初始化随机数发生器,使得每次运行生成的随机数不同
15     for(i=0;i<30;i++) //做30题
16     {
17         a = rand() % 10; //生成一个0~9之间的随机数
18         b = rand() % 10;  //生成一个0~9之间的随机数
19         mode = rand() % 4; //生成一个0~3之间的随机数,代表运算符
20         printf("%d", a);   //打印算式
21         switch(mode) //确定运算符
22         {
23         case 0:
24             printf("+");
25             result= a + b;   //加法运算的正确答案
26             break;
27         case 1:
28             printf("-");
29             result= a - b;   //减法运算的正确答案
30             break;
31         case 2:
32             printf("*");
33             result= a * b;   //乘法运算的正确答案
34             break;
35         case 3:
36             if(b==0)
37             {
38             b =1;
39             }                //除数不为0
40             printf("/");
41             result= a / b;   //除法运算的正确答案
42             break;
43         default:
44             printf("something is wrong!\n");
45             break;
46         }
47         printf("%d = ", b);
48         scanf("%d", &c); //输入答案
49         if(c == result) //与正确答案一致
50         {
51             score+= 1;  //答对的题数
52             printf("Right\n\n");
53         }
54         else
55         {
56             printf("Wrong\n\n"); //答错
57         }
58     }
59     printf("Yourscore is: %d\n\n\n", score);//显示30道题中答对的题数
60     return 1;
61 }

以下是我的思路:既然是随机四则运算我就用到了随机函数rand(),对于小学二年级学生,我尽量将运算结果范围限制在100以内;要出30道题目我就用到了for循环产生,其中我避免了除数不为0情况。(代码中有详细注释)

实验截图:

时间: 2024-10-11 04:36:55

软件工程课后作业一之30道随机四则运算程序的相关文章

软件工程课后作业一之30道随机四则运算程序2

一.设计30道随机四则运算程序要求: 1.题目避免重复: 2.可定制(数量/打印方式): 3.可以控制下列参数: 是否有乘除法.是否有括号. 数值范围.加减有无负数.除法有无余数.否支持分数 (真分数, 假分数, …).是否支持小数 (精确到多少位).打印中每行的间隔可调整: 二.设计思路:1.题目避免重复我用3个数组将第一个数,第二个数和运算符(已用数字0-3表示加减乘除)存起来,之后用for循环将新产生的数组单元与以前产生的数组单元一一比较,有重复则将当前参数自减一重新产生新数组单元如此反复

软件工程课后作业一之30道随机四则运算程序3

一.题目要求: 用户输入答案,程序自动判定对错,最后给出总共对/错的数量. 二.设计思想: 在原程序基础上增加四则运算结果并用result保存起来,之后用户输入一个结果并与之比较,相等则显示正确,答错则显示正确答案. 三.代码: #include<iostream.h> #include<stdlib.h> #include<time.h> int answer=0; int score=0; int result=0; void display(int number,

软件工程课后作业一之30道随机四则运算程序2设计思想

1.题目避免重复实现方法:把实验结果存在文件里,之后查找并删除相同题目结果的试题2.定制数量:首先询问需要多少试题,之后定义一个全局变量number并键盘赋值,用for循环定制数量3.是否有乘除实现:提示用户是否需要乘除法用switch结构实现,0表示不需要乘除,1表示需要乘除,4.数值范围:可用rand()%N实现控制范围5.加减有无负数:提示用户是否需要加减有无负数,用switch结构实现,0表示不需要负数,1表示需要负数:不需要负数则控制随机数范围为正数,且要保证被减数大于减数,可以交换函

软件工程课后作业——用JAVA编写的随机产生30道四则运算

1 package com.java.sizeyunsuan; 2 3 public class lianxi { 4 String f() 5 { 6 int i=(int)(Math.random()*10); 7 int j=(int)(Math.random()*10); 8 if(i>=j) 9 { 10 int temp=i; 11 i=j; 12 j=temp; 13 } 14 return(i+"/"+j); 15 } 16 public static void

软件工程课后作业——四则运算Ⅲ(C++)

一.设计思路 题目:可以答题并判断对错,最后显示做对几道题. 在原有的基础上,又拓展了答题模块. 在结构体中添加了answer属性,把输入的答案与正确答案比较,若相等则计数加一. 二.源代码 (1)四则运算3.cpp 1 // 四则运算3.cpp : Defines the entry point for the console application. 2 // 袁佩佩 信1201-1班 20122785 2015/3/18 3 4 #include "stdafx.h" 5 #in

软件工程课堂作业(二)——升级版随机产生四则运算题目设计思想

升级版随机产生四则运算题目要求: 1.避免题目重复: 2.可定制题目(题目数量.打印方式): 3.可以选择:是否有乘除法.是否有括号.定制数值范围.加减有无负数.除法有无余数.是否支持分数.是否支持小数.定制每行间隔等. ********************************************************************************************************* 设计思想: 1.避免重复:输出时,确定了运算符号,两个运算数都相同

软件工程课后作业

一.程序源代码 二.验证结果截图 1.顺序 2.倒序 3.乱序 4.正负 5.负数 6.相同

课堂练习之每天出30道四则运算题目

1 /* 2 需求:每天出30道四则运算题目给小学生做 3 */ 4 5 class Rand 6 { 7 public static void sop(Object obj) 8 { 9 System.out.println(obj); 10 } 11 public static void main(String[] args) 12 { 13 sop("小学生二年级课后作业,每天30道四则运算练习:"); 14 15 int count = 0; 16 17 for (int i=

软件工程课堂练习-随机生成30道四则运算练习题

习题要求:随机生成30道四则运算题 以下是程序代码: 1 #include "stdafx.h" 2 #include "stdio.h" 3 #include "time.h" 4 #include "stdlib.h" //随机器函数头文件 5 6 void print() 7 { 8 srand((int)time(0)); 9 for(int i=0;i<=29;i++) 10 { 11 int x; 12 in