1、4.4综合问题的解决一、 填空题1.需求分析是软件工程中的一个( )过程。需求分析阶段的任务是确定( )的功能。通俗地说,就是确定需要计算机“做什么”,想达到什么样的效果。只有在确定了这些需求后,才能够分析和寻求系统的解决方法。2.pygame模块提供了( )( )等函数;random模块用于产生( );sys模块包含了跟Python( )相关的函数。3.调用( )函数,将返回一个窗口。如果想在窗口上绘制或是放置对象,需要指定这个对象在窗口的( )即坐标。pygame中的坐标系原点在( ),水平方向为( )轴,垂直方向为( )轴。4.在pygame中,使用图像的最简单方法是调用( )函数。通过
2、( )来载入图片,( )表示图像文件的路径和名称。图像文件必须和程序在( )下才可以使用相对路径的引用方式。5.Pygame.display的功能是访问( );Pygame.event的功能是( );Pygame.font的功能是使用( ) ;Pygame.image的功能是( )。 6.游戏状态通常随事件的发生而改变,如鼠标单击、键盘输入或者时间的流逝,游戏循环不停地检查是否有新事件产生,并且会根据事件来更新游戏状态,这通常叫作( )。7.要达到在窗口显示不同位置的福字,需要完成两个步骤:(1)在新的位置上( );(2)把原来的图像( )。要“擦掉”某个图像,可以选择( )它,通常采用( )
3、或者用( )来覆盖的方式。8.为了便于游戏循环中反复调用,可以定义成一个函数( ),在绘制福字时,需要设置图像显示的位置,因此showfu中有两个参数,分别表示图像位置的( )和( )。二、判断题1.实时获得鼠标的状态并对鼠标单击做出正确的响应,只有不断地进行监听、更新游戏状态、重绘屏幕三个步骤的操作。2.计算机中要“擦掉”某个图像,和铅笔画用橡皮擦擦掉类似。3.需求分析之后、程序设计之前,需要对系统进行总体设计和详细设计。总体设计就是在需求分析的基础上对模型细化、分解任务,明确程序由哪些模块组成。三、程序分析1.Pygame自带了一个监听类循环,不断检查用户的操作,这个循环在程序运行过程期间
4、持续工作。仔细阅读理解如下代码填写括号内容while True: for event in pygame.event.get(): #( ) if event.type=pygame.QUIT: #( ) sys.exit() #退出程序 if event.type=pygame.MOUSEBUTTONDOWN: #( )2.要将显示一个有背景色的窗口改为显示一个有背景图片的窗口应将*处改为两句,请填写在处。screen.fill(255,255,0) #窗口填充黄色*( ) #加载背景图像( ) #将背景图画在窗口pygame.display.update() #窗口刷新3.显示游戏程序的得
5、分,方法为:先定义显示字体,然后将score显示出来。为了增加代码的复用性,以便游戏循环中状态更新时反复调用,可以定义成一个函数showscore。def ( ): #定义函数,显示分数textfont=( ) #字体为Arial,大小30#生成平滑的红色字符串t=( )(score:+str(score),True, (255,0,0)screen.blit(t,50,50) #在窗口显示参考答案一、 填空题1. 关键 软件系统2. 图像 声音 随机数 环境3. pygame.display.set_mode() 具体位置 左上角 X Y4. Image pygame.image.load(filename) filename 同一文件夹5. 显示设备 管理事件 字体 加载和存储图片6. 事件处理7. 画出图像 擦掉 “覆盖” 重绘背景 其他对象8. Showfu 横坐标 纵坐标 二、 判断题1. 错2.错3.对三、 程序分析1. 监听并获取事件列表Quit事件侦听到鼠标点击事件2. back=pygame.image.load(bj.jpg) screen.blit(back,0,0)3. showscore(score) pygame.font.SysFont(Arial,30)textfont.render