lottery

这个程序作于本人大一刚入学,在对程序接触只有一遍网课以及没有任何人的帮助下写作而成,是本人的第一个有点点规模(相对于新手而言)的程序,当然会很不成熟,但也算是一个比较好的开端,前前后后用时12个小时,也将自己的知识慢慢地转化成了实际的技能。

为什么写这个程序?

首先,作为一名凑数的OIer,在发现自己之前对编程的学习根本不能转化成实际成果,甚至在之后的ACM学习还过不了语言关的时候,我深深地感受到了危机,一直迫切地想要去写一个初具规模的程序来检验一下自己的学习成果。

其次,上周突然我的同学跟我开了个玩笑,说自己中了五百万,于是我想起了自己曾经想要写一个程序去模拟双色球的中奖,但随意搜索了一下并没有能让我满意的程序(没有看到我熟悉的语言),而且这个问题完全可以用数学去求解,所以没人写这个程序也很正常。但世界并不是完全按照概率走的,比如一个人如果中了五百万或者五万,按照正常人的心态可能就不会再去买彩票了,我想要模拟这种情况,在此基础上,我才想要考虑写这个程序。

这个程序实现了什么?

这个程序很简单,只是进行了一个随机生成,随机生成双色球的六个红球和一个蓝球,然后进行比对进而累计金额。这只是初版,以后想要增加的功能有: ~~1. 提供循环次数以及其他简单参数修改的接口。~ ~2. 增加是否在大于某个金额之后结束程序的功能。(这一部分我可能会使用一个较为复杂的flag条件判断,也只是为了锻炼我自己的能力)~~(已经实现)

我从中获得了什么?

这个程序真的很浅显,应该说只要学过一些编程的人都可以写出来这个程序,但可能是我编程生涯开始的地方,我从中获得了:

  1. rand生成特定范围的随机数和srand生成不同的伪随机数列
  2. printf和scanf的用法(之前一直用的是cin和cout)
  3. qsort的用法(可能根本不难)
  4. 强化了函数的写法、调用和多结果返回
  5. 文件输入输出的使用(还发现了超过1g的txt文件无法用记事本打开)
  6. 上手GitHub的初级用法
  7. 一颗开始对编程热爱的心♥

2021.9.4作于UESTC清水河图书馆二楼