博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
20150324 练习一 四则运算
阅读量:5103 次
发布时间:2019-06-13

本文共 3930 字,大约阅读时间需要 13 分钟。

20150326

软件工程的作业,四则运算小系统。

以下是我的测试的数据:

 

以下是源代码:

1 #include
2 #include
3 #include
4 int amount = 0;//定义全局变量amount存储答对题目的数量 5 void inface()//简单界面 6 { 7 printf("\t\t--------------------------------------\n"); 8 printf("\t\t- -\n"); 9 printf("\t\t- -\n"); 10 printf("\t\t- 四则运算系统 -\n"); 11 printf("\t\t- -\n"); 12 printf("\t\t- -\n"); 13 printf("\t\t- Ives 14.3.26 -\n"); 14 printf("\t\t--------------------------------------\n"); 15 16 } 17 int Random(int n,int m)//随机生成n~m的整数 18 { 19 int op; 20 srand(time(NULL)); 21 op = rand()%m+n; 22 return op; 23 } 24 25 int Right()//随机生成回答正确的提示语 26 { 27 int n; 28 n = Random(1,4); 29 switch(n){ 30 case 1: 31 printf("恭喜你,你答对了!\n"); 32 break; 33 case 2: 34 printf("你真棒,你答对了!\n"); 35 break; 36 case 3: 37 printf("你真聪明,你答对了!\n"); 38 break; 39 case 4: 40 printf("。。。。。。。答对了!\n"); 41 break; 42 default: 43 break; 44 } 45 amount++;//回答正确就+1 46 return amount; 47 } 48 49 void Worng()//随机生成回答错误的提示语 50 { 51 int n; 52 n = Random(1,4); 53 switch(n){ 54 case 1: 55 printf("回答错误!\n"); 56 break; 57 case 2: 58 printf("错了,再接再厉\n"); 59 break; 60 case 3: 61 printf("没关系,这次错了,下次加油!\n"); 62 break; 63 case 4: 64 printf("回答错了,揉揉眼睛继续努力!\n"); 65 break; 66 } 67 } 68 69 void operation()//随机生成运算 70 { 71 int a; 72 int b; 73 int ou; 74 int answer; 75 76 ou=Random(1,4);//随机生成1-4的整数 77 a = Random(1,18);//随机生成1-18的整数 78 b = Random(3,10);//随机生成3-10的整数 79 80 switch(ou){ 81 case 1://加法 82 printf("%d+%d=",a,b); 83 scanf("%d",&answer); 84 if(answer == a+b) 85 Right(); 86 else 87 Worng(); 88 break; 89 case 2://减法 90 printf("%d-%d=",a,b); 91 scanf("%d",&answer); 92 if(answer == a-b) 93 Right(); 94 else 95 Worng(); 96 break; 97 case 3://乘法 98 printf("%d*%d=",a,b); 99 scanf("%d",&answer);100 if(answer == a*b)101 Right();102 else103 Worng();104 break;105 case 4://除法106 printf("%d/%d=",a,b);107 scanf("%d",&answer);108 if(answer == a/b)109 Right();110 else111 Worng();112 break;113 default:114 printf("系统出错了!\n");115 printf("%d",ou);116 break;117 }118 }119 120 int main()121 {122 int n=1;123 inface();124 printf("本系统一共有20道题,请认真答题!\n");125 while(n<=20){126 printf("第%d道题: ",n);127 operation();128 n++;129 }130 printf("你答对了%d道题.\n",amount);131 132 return 0;133 134 }

 

预算1个小时,实际用时也差不多一个小时。

写这个程序的过程遇到的一些困难:

1.忘记了怎么样产生随机数,查了教材知道了用srand生成种子,在利用rand函数生成随机数,不过这样的方式生成的随机数应该不算真正的随机数,是伪随机数,因为数列不够长,所以会经常性同时两个数都重复。我会查询资料看看真正的随机数是怎么样生成的。

2.一时忘记了应该怎么产生随机的运算符,后来舍友的提醒一下子明白过来了。利用产生的随机数,当等于1的时候是+,2的时候是-这样。

4.一开始的时候是想用Java来写一个带界面的四则运算的小系统的,打开了Eclipse,想要先写个窗体,但是四十分钟了都没有写出来,对Java真的很不熟悉,一点儿都不会用。所以后来选择了C来写。

 

这个程序的一些小特别的地方:答对的时候会有不一样反应,利用了随机的原理,这样不会产生视觉疲劳。不过这个是上学期老师讲讲过的。

 

个人心得:

代码真的要经常敲才会熟练,不然真的会很生疏。我对Java这么语言真的很生疏,很多基本的东西都不懂,连一个简单的窗体也不能很快的写出来,就算写出来了也很丑。所以在今后要认真多练习Java。加油!

 

这次的作业报告到此结束,谢谢老师审阅。

 

你只有非常努力,才能看起来毫不费力!

 

转载于:https://www.cnblogs.com/IvesHe/p/4369782.html

你可能感兴趣的文章
JAVA开发环境搭建
查看>>
mysql基础语句
查看>>
Oracle中的rownum不能使用大于>的问题
查看>>
[Data Structure & Algorithm] 有向无环图的拓扑排序及关键路径
查看>>
cassandra vs mongo (1)存储引擎
查看>>
Visual Studio基于CMake配置opencv1.0.0、opencv2.2
查看>>
遍历Map对象
查看>>
MySQL索引背后的数据结构及算法原理
查看>>
#Leetcode# 209. Minimum Size Subarray Sum
查看>>
SDN第四次作业
查看>>
DM8168 DVRRDK软件框架研究
查看>>
django迁移数据库错误
查看>>
yii 跳转页面
查看>>
洛谷 1449——后缀表达式(线性数据结构)
查看>>
Data truncation: Out of range value for column 'Quality' at row 1
查看>>
Dirichlet分布深入理解
查看>>
(转)Android之发送短信的两种方式
查看>>
python第九天课程:遇到了金角大王
查看>>
字符串处理
查看>>
HtmlUnitDriver 网页内容动态抓取
查看>>