基于C语言福利彩票设计.doc
《基于C语言福利彩票设计.doc》由会员分享,可在线阅读,更多相关《基于C语言福利彩票设计.doc(46页珍藏版)》请在三一文库上搜索。
1、高等教育自学考试毕业论文(设计)苏州大学高等教育自学考试“专接本”毕业论文(设计)题目 基于C语言的福利彩票系统设计 专科学校 苏州工业职业技术学院 专业 计算机信息管理 班级 11级专接本 考生姓名 万泽昊 准考证号 054511225041 指导教师 雷 晖 2013年 3 月 30 日目 录摘 要1前 言1第一章 概 述21.1程序的任务与目标21.2本论文的所做的工作2第二章 开发环境的介绍32.1 C语言介绍32.2 Turbo C for windows 环境介绍3第三章 程序设计43.1程序设计框架43.2程序界面设计43.2.1主菜单设计43.2.2主菜单的流程图53.2.3主
2、菜单的关键技术6第四章 福彩3D84.1福彩3D概念84.1.1福彩3D介绍84.1.2福彩3D分类84.1.3福彩3D规则84.1.4福彩3D中奖直观表84.2福彩3D设计流程图94.3福彩3D玩法演示94.4福彩3D玩法的关键技术和代码13第五章 双色球155.1双色球介绍155.2双色球规则155.3双色球中奖直观图155.4双色球流程图155.5双色球玩法165.6双色球关键技术205.6.1随机关键技术205.6.2号码匹配关键技术215.6.3中奖界面闪烁关键技术22第六章 江苏15选5246.1江苏15选5规则246.2江苏15选5直观表246.3江苏15选5流程图246.4江苏
3、15选5玩法演示256.5江苏15选5关键技术27第七章 东方6+1297.1东方6+1规则297.2东方6+1中奖直观表297.3东方6+1流程图297.4东方6+1玩法演示307.5东方6+1玩法的关键技术33第八章 七乐彩358.1七乐彩规则358.2七乐彩中奖直观表358.3七乐彩流程图358.4七乐彩玩法演示368.5七乐彩玩法的关键技术38结 论40参考文献41致 谢42摘 要福利彩票是一项面向社会的利国利民的事业,能给彩民以放松,让我们从繁重的工作、学习以及日常生活中解脱出来。而只有我们的身心得到放松才能更好的投入到学习和生活中。本文讲述了运用C语言来编写福利彩票思路和方法,分别
4、有:3D,双色球,江苏15选5,东方6+1以及七乐彩。其中,3D又分为:3D直选、组选3、组选6。在软件进行时,系统会给出所选的彩票类型以及游戏规则等注意事项,彩票购买完成后,软件会将随机开出的号码和彩民输入的号码进行比对,以确定是否中奖。这个软件涉及到C语言中多重循环、条件判断语句及函数调用等知识。关键词:3D,双色球,江苏15选5,东方6+1,七乐彩作 者: 万泽昊指导老师: 雷 晖前 言C语言是计算机信息管理专业的一门基础课程。他既具有高级语言的特点,又有汇编语言的特点。他可以作为系统设计语言,编写工作系统应用程序,也可以作为,编写不依赖计算机硬件的应用程序。因此他的应用范围广泛。本课程
5、设计主要求我们做数学计算器,通过这个课程设计能够让我们对学习计算机产生兴趣,使我们全面了解 C 语言的特点,熟练掌握 C 语言程序设计的基本方法和编程技巧。对C语言有个更全面的认识,巩固我们所学的知识。使我们的理论知识与实践相结合起来。本课题研究的是基于C语言的福利彩票软件设计。我设计的程序他具有本地时间显示、不同福彩种类的购买和开奖功能;不管是3D、双色球、江苏15选5,东方6+1还是七乐彩,只要你输入你的号码,福彩软件马上可以根据你所购买的号码和系统开出的号码进行比对,得出你是否中奖;同时软件在你进行过一次选择后会自动变换一种养眼的颜色。不会因为长时间游戏而产生视觉疲劳。本论文共有8章内容
6、具体如下:第一章 概 述第二章 开发环境的介绍第三章 程序设计第四章 3D第五章 双色球第六章 江苏15选5第七章 东方6+1第八章 七乐彩第一章 概 述1.1程序的任务与目标本课程的主要任务如下:1).获取本地时间2).彩票类型设计3D 双色球 江苏15选5 东方6+1 七乐彩3).界面颜色设计(中奖页面的霓虹灯闪烁效果)1.2本论文的所做的工作 本论文主要是围绕C语言程序设计的流程,一步一步做下去的,首先整体框架的设计,然后对每个模块工作原理加以阐述,其次举例说明,绘制流程图,程序演示,最后写了结论,还有参考文献,加上致谢;另外,本文还对程序中所运用的几个关键技术进行了说明,并对整个程序目
7、前存在的问题与不足进行了探讨,为进一步完善该系统提出可行的解决方案。 40第二章 开发环境的介绍2.1 C语言介绍C语言是目前世界上流行、使用最广泛的高级程序设计语言。它是一种计算机程序设计语言。它既具有高级语言的特点,又具有汇编语言的特点。它可以作为工作系统设计语言,编写系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序。C语言对操作系统和系统使用程序以及需要对硬件进行操作的场合,用C语言明显优于其它高级语言,许多大型应用软件都是用C语言编写的。 2.2 Turbo C for windows 环境介绍Turbo C/C+ for Windows 集成实验与学习环境是从
8、事一线教学的教师根据 C 语言初学者的特点,量身定制的一个简单易用的 C 语言实验与学习软件。软件集成了高校 C 语言教学中使用最多的三种编译器 Visual C+ 6.03 、Turbo C+3.02和Turbo C 2.02 ,给高校 C 语言的实验教学提供了简单易用的软件实验环境。第三章 程序设计3.1程序设计框架图3-1程序设计框架3.2程序界面设计3.2.1主菜单设计主界面一开始可显示本地时间,同时自动生成一个养眼的颜色效果界面。可根据设置的6个选择:1.3D;2.双色球;3.江苏15选5;4.东方6+1;5.七乐彩;6.退出游戏。选出自己中意的彩票类型。如图3-2:图3-2 主菜单
9、3.2.2主菜单的流程图主菜单的流程图,如图3-3所示:图3-3 主菜单流程图主菜单的流程图主要执行的过程是:首先显示6个功能选项,然后让我们输入自己想要选择的功能。比如我选择1,那么会调用3D函数进行再次选择,选择2就是组选3,以此类推。其次用了一个switch语句对6个功能进行选择。执行完以后提示是否继续游戏。3.2.3主菜单的关键技术3.2.3.1重复循环和颜色变换主菜单用了一个循环,可以重复进行游戏,直到我们想退出游戏,否则程序就不会结束。循环里面还用了清屏函数system(cls),system(cls)执行 cls 命令,是把屏幕清除,让界面看起来很清爽。system(color
10、2e)是改变界面的颜色,使整个界面看起来不那么单调。具体效果如图3-4所示:图3-4 重复游戏和颜色变换示意图switch语句是执行我们选择的操作,当你输入的数字是几就对应调用第几个函数。3.2.3.2本地时间的获取 这里使用了time(&rawtime)函数获取当前时间距1970年1月1日的秒数,以秒 计数单位,存于rawtime 中,使用localtime ( &rawtime )函数转为当地时间,使用asctime()函数转为标准ASCII时间格式。实现效果如图3-5所示:图3-5 本地时间获取3.2.3.3本地时间获取关键代码时间定义函数如下:int tm_sec; int tm_mi
11、n; int tm_hour; int tm_mday; int tm_mon; int tm_year; int tm_wday; int tm_yday; int tm_isdst;时间格式转换代码:time_t rawtime; struct tm * timeinfo; time ( &rawtime ); timeinfo = localtime ( &rawtime );第四章 福彩3D4.1福彩3D概念4.1.1福彩3D介绍中国福利彩票3D游戏(简称3D)。是以一个3位自然数为投注号码的彩票,投注者从000-999的数字中选择一个3位数进行投注,所中奖金采用固定奖金结构。4.1.
12、2福彩3D分类福彩3D分为3类:直选 组选3 组选6。4.1.3福彩3D规则一直选投注号码与当期摇出的中奖号码的3位数按位数全部相同。二组选3当期摇出的中奖号码3位数中有任意两位数字相同,且投注号码与中奖号码的数字相同,顺序不限。三组选6当期摇出的中奖号码中3位数各不相同,且投注号码的三个数字与当期中奖号码相同,顺序不限。4.1.4福彩3D中奖直观表为了使玩家能够更直观的了解福彩3D的规则,我设计了直观图。如图4-1所示:图4-1 3D中奖直观图4.2福彩3D设计流程图福彩3D流程图,如图4-2所示:图4-2福彩3D函数流程图4.3福彩3D玩法演示首先在主界面输入1按回车出现3D选择界面,再输
13、入1,出现福彩3D直选画面。若输入2,则出现福彩3D组选3画面;若输入3,则出现福彩3D组选6画面。如图4-3,4-4,4-5所示:图4-3 福彩3D直选玩法演示图4-4 福彩3D组选3玩法演示图4-5 福彩3D组选6玩法演示若没有中奖,则会出现失败画面,效果如图4-6所示:图4-6 福彩3D没有中奖效果演示4.4福彩3D玩法的关键技术和代码用随机函数给出开奖号码,和玩家录入的号码进行比对,确定是否中奖。随机函数相关代码如下:void _3D(int a,int num,int z,int d) int b3; int i, k; srand(unsigned)time(NULL); for(
14、i = 0; i 3; i+) bi= (rand() % d) + 1); printf(tt第%d个数是%dn,(i + 1),bi); printf(n); printf(ntt本次彩票您购买的号码是:ntt); for(k=0;k3;k+) printf(%d ,ak); printf(ntt本次彩票您购买的注数是:ntt); printf(%d ,z); printf(ntt本次购彩所花费金额为:%d元 ,z=2*z); printf(ntt本次彩票开出的中奖号码是:ntt); for(i=0;i3;i+) printf(%d ,bi); printf(n); _3DZJ(a,3,b
15、,3,z); 第五章 双色球5.1双色球介绍双色球是全国销售,摇奖过程通过电视、网络直播的乐透型彩票。5.2双色球规则双色球投注区分为红球号码区和蓝球号码区,红球号码范围为0133,蓝球号码范围为0116。双色球每期从33个红球中开出6个号码,从16个蓝球中开出1个号码作为中奖号码,双色球玩法即是竞猜开奖号码的6个红球号码和1个蓝球号码,顺序不限。5.3双色球中奖直观图同样为了使玩家能够更清楚的对双色球的规则有所了解,采用了直观图的形式,效果如图5-1所示:图5-1 双色球中奖直观图5.4双色球流程图双色球的流程原本应该和东方6+1差不多,但是为了验证程序的正确性还是做了一些改动,后面会有改动
16、的详细介绍,这里不多赘述。双色球流程图,如图5-2所示:图5-2 双色球流程图5.5双色球玩法(在主界面输入2按回车出现双色球玩法界面,按规则输入6个红球号码和一个蓝球号码即可)这是没改动之前的玩法。因为这个福彩系统设计是按照标准的福彩设计的,而福彩的中奖几率大家也知道,实在是渺茫啊!如上所说,为了验证程序的正确性。我将程序做了一些改动。先将中奖号码随机出来提供给玩家,玩家可以根据中奖号码输入自己的号码。如果输入中奖号码,呵呵,500万就出来了。当然,仅此一例,其他彩种我并没有将中奖号码提供出来,游戏还是得自己亲身体验才好。知道结果就很容易厌倦了,不是么。具体演示效果如图5-3所示:图5-3双
17、色球玩法演示看到这张图玩家也许会问:不是说输入中奖数字会中500万么!怎么看不到?其实正如图最后一句话所示:稍等2秒,2秒之后便会出现特制的500万大奖霓虹灯闪烁效果图。但是因为不能插入GIF动态图,大奖页面颜色变换太多。我便想了个折中的办法:选取了3张不同的颜色效果图作参考。如图5-4,5-5,5-6所示:图5-4大奖效果图1图5-5大奖效果图2图5-6大奖效果图3其他的奖项效果图如图5-7,5-8,5-9所示:图5-7 双色球2等奖效果图图5-8 双色球3等奖效果图图5-9 双色球4等奖效果图5.6双色球关键技术5.6.1随机关键技术由于特别号码(篮球)和红球号码的随机范围不一样,所以只能
18、单独进行随机。调试程序时发现如果输入的号码是混乱的,出来的号码也是混乱的。所以为了看得清晰一点,做了个排序,双色球关键代码如下:srand(unsigned)time(NULL);b0 = (rand() % 33) + 1);for(i = 0; i 5; i+) bi+1 = (rand() % 33) + 1); for(j = 0; j = i; j+) if(bi + 1 = bj) break; if (i j) n = 1; else i-; n+; b6 = (rand() % 16) + 1);printf(n); for(j = 0; j 5;j+) for(i = 0;
19、i bi+1) sum = bi+1;bi+1 = bi;bi = sum; 5.6.2号码匹配关键技术匹配号码其实很简单,只要定义一个数如p,赋值为0。当2组数对比时,若有一个数相同,p+。最后返回p值就行了。代码如下:p1=0;for(i=0;i6;i+)for(q=0;q6;q+) if(bi=aq) p1+; if(b6=a6)p2=1;elsep2=0; printf(前面匹配%d,后面匹配%dntt,p1,p2);5.6.3中奖界面闪烁关键技术匹配成功后,我使用Sleep(2000)使得界面暂停2秒,告诉玩家中了1等奖。否则的话,一旦匹配成功,直接跳出1等奖画面,那就显得太突兀了。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 语言 福利彩票 设计
链接地址:https://www.31doc.com/p-10816637.html