资源描述:
《(C语言)智力猜字游戏.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、《C语言》考试A卷------36选6彩票抽奖系统彩票抽奖系统简介:在1-36个数字中,先人工选择6个数字,然后抽奖,由电脑生成6个随机数,比较人工选择的6个数字和电脑生成的6个随机数中,相同的个数。系统功能分析本系统由以下几个功能模块(函数)构成:显示模块(函数):显示指定(已知)数组中的非0元素。校验模块(函数):验证指定(已知)数组的合法性,数组中的数据是否有重复?是否有超出1-36范围的数据?选号模块(函数):将输入的整数存入数组a1,并将a1作为本模块(函数)的结果。随机数产生模块(函数):产生随机数存入数组b1,并将b1作为本模块(函数)的结果。兑奖模
2、块(函数):将选号模块得到的数组a1与随机数产生模块得到的数组b1进行比对,看有多少个数组元素是相同的,相同的数据则为已中奖的数据,相同数据越多,中奖级别越大,并输出中奖信息。目的:考察掌握(函数)的定义、调用、嵌套、递归、指针、循环等知识的综合应用要求:各个子功能模块(函数)独立实现,并能够独立测试。主要知识点:函数的定义、调用。数组的定义和使用知识点补充:如果将指针作为函数返回值,那么该指针所指向的变量必须是静态的,否则,指针有效,但其所指向的变量已经被释放了步骤前提:1.导入头文件#include#include#inc
3、lude2.在所有函数的外部,定义一个全局常量constintarray_length=6;//表示数组的长度模块1:显示模块(函数)(本模块20分)模块功能:显示指定(已知)数组中的信息。定义一个函数display,该函数的功能是将指定(已知)的数组中所有非0的元素,逐个输出。相关的知识点:函数的定义、数组的使用、for循环的使用函数的算法如图:是否是否取出数组中第i个元素已知数组a,inti=0;元素是否为0输出该元素i<数组长度结束i++分析:函数头:该函数只是需要显示数组的元素,不需要任何结果,因此不需要返回值,即返回值类型为void,函数
4、名称display,该函数需要显示的是指定(已知)的数组信息,即必须要知道显示的数组。因此函数参数为inta[]函数体:1.先使用printf语句,输出,号码为:2.使用for循环,将已知数组a的各个元素取出,判断其是否为0?如果为0,则不输出;不为0,则将其输出。3.使用printf语句,换行模块1(函数)的测试:在完成了函数display的基础上,在main()函数中,定义一个数组intceshi[]={9,8,7,6,5,4};然后调用display函数,将数组ceshi的元素输出。将数组元素改为ceshi={9,8,7,0,0,0},然后调用display
5、函数,将数组ceshi的元素输出。比较前后两次调用的结果。测试结果如图:测试1,当ceshi={9,8,7,6,5,4}时,输出测试2,当ceshi={9,8,7,0,0,0}时,输出测试完成后,将mian()函数中的测试语句注释掉。模块2,校验模块(函数)(本模块20分)模块功能:验证指定(已知)数组的合法性,数组中的数据是否有重复?是否有超出1-36范围的数据?如果数组合法,则返回1,否则返回0相关的知识点:函数的定义函数的大概流程如图:是否是否取出数组中第i个元素已知数组a,inti=0;Result=1;元素值是否合法Result=0;i<数组长度ngth
6、返回result值i++分析:(???号部分的内容,留给大家自己思考)函数头:该函数的结果是数组是否合法,合法则返回1,不合法则返回0,那么返回值的类型应为???;函数名称check(也可以自拟函数名);该函数是验证指定(已知)数组的合法性,即必须要知道验证的数组。因此函数参数为???函数体:1.先定义一个int类型的临时变量result=1;//默认为结果合法2.使用双重嵌套for循环,第一层for循环用于取出已知数组a的某个元素a[i],第二层for循环用于取出数组的另一个元素a[j],比较两个元素,是否相同,如果相同,则证明数组中存在重复的数据,那么resu
7、le=0,说明该数组不合法。同时验证数组的数据范围是否在1-36范围内,若不在此范围内,则resule=0步骤2的参考代码如下:3.在完成所有循环后,将result作为本函数的结果返回。模块2(函数)的测试:1.在完成了check函数的基础上,在main()函数中,定义一个数组intceshi[]={9,8,7,6,5,4};2.定义一个判断变量intdecide,并调用check函数验证数组ceshi的合法性,并将验证结果赋值给decide。即decide=check(ceshi);3.使用if语句,如果decide为1,则使用printf语句,输出“合法”如果
8、decid