zoukankan      html  css  js  c++  java
  • 第二次课程设计

     

    2019春第二次课程设计实验报告

     

    一、 实验项目名称

    空战飞机     

     

    二、 实验项目功能描述

      1.通过w、a、s、d和空格来控制飞机的移动和发射子弹

    2.实现多台敌机的攻击

    3.实习飞机发射散弹的功能

     

    三、 项目模块结构介绍

    1、 startup( )函数:用于数据的初始化

            定义position_xposition_y来确定飞机的位置

            

    确定敌机位置,因为敌机被打后会出现新的敌机,所以使用rand()函数在画面内随机确定一个数来确定敌机位置

           

    2、 show( )函数:用于显示画面

    通过控制二维数组canvas[High][Width]对应的元素输出空格、飞机 子弹和敌机@

     

    3、 updateWithoutInput( )函数: 与用户输入无关的更新

              用于控制子弹击中敌机,产生新飞机、子弹消失、撞击,以及分数的计数

    4、 updateWithInput( )函数 与用户输入有关的更新

              根据用户的不同输入来实现show()函数中的输出,即控制输出飞机子弹敌机和空格

    5、清屏功能:画面闪烁严重需要清屏

    gotoxy( )函数:将光标移动位置

    HideCursor()函数:隐藏光标

    在初始化的时候调用gotoxy()函数将光标移动到原点位置,

    显示画面的时候调用HideCursor()函数隐藏光标

    四、 实现界面展示

     

    五、 代码托管链接

    https://gitee.com/xu23/xuhao

    六、 实验总结

    问题:1.没懂rand()函数的作用 

          2. 数组中还有数组比较复杂

    解决1. 因为敌机被击中后会消失,所以会出现新的敌机,但无法定义所有的敌机位置,此时需要rand()函数,rand()% A,为在0-(A-1)之间随机出现一个数来确定新敌机的位置。

    感想:一个程序都由一小部分一小部分构成的,所以写一个程序首先需要有一个大体的框架,弄明白程序的要求,作用,所需要实现的功能,然后一步步开始实现代码。

           此游戏和上次飞机游戏其实差不多,在原来的基础上加上了多台敌机以及移动,和发射散弹的功能,所以使用的是二维数组来控制,应用数组可以更方便地记录复杂的数据,实现复杂的显示,逻辑判断与控制,但需要更强的理解能力,需要把基础知识巩固扎实。

  • 相关阅读:
    javascript-类型、值和变量
    词法结构
    前端js保存页面为图片下载到本地
    js生成带log的二维码(qrcodejs)
    工具函数
    css 水平垂直居中
    vue中的keep-alive
    vuex 的使用
    Spring源码解析
    Spring源码解析
  • 原文地址:https://www.cnblogs.com/xu23/p/10986555.html
Copyright © 2011-2022 走看看