c语言编程小车动画,C语言课程设计运动的小车动画.doc

C语言课程设计运动的小车动画

XXX航空工业学院

课 程 设 计 报 告

课程设计名称:C语言课程设计

课程设计题目:运动的小车动画

院(系):计算机学院

专 业:网络工程

班 级:

学 号:

姓 名:

指导教师:

完成日期:2009年07月17日

目 录

第1章 需求分析1

1.1题目的内容与要求1

1.2开发工具1

1.3题目分析1

第2章 概要设计2

2.1总体结构2

第3章 详细设计3

3.1主函数模块3

2.2图形驱动模块3

2.3场景游戏模块4

3.4游戏过程模块5

3.5结束模块模块7

第4章 调试分析8

第5章使用说明9

参考文献11

附 录(程序清单)12

第1章 需求分析

1.1题目的内容与要求

内容:实现一个简单动画,屏幕背景为蓝色,画一简单小车。小车在屏中随意移动。

要求:

1)实现简单的游戏界面;

2)对小车运动进行控制;

3)熟练掌握基本的调试方法,并将程序调试通过;

4)采用VC环境进行调试运行。

1.2开发工具

操作系统:WindowsXP SP2。

硬件环境:CPUAMD3000+内存1G ,硬盘 120G。

软件环境:TurboC。

1.3题目分析

本程序首先分为四个模块即编写四个函数,主程序按顺序调用这四个函数最后掉用关闭图形系统函数,至此整个程序算是真正结束。题目程序设计思想分析是:先设置背景色和前景色,确定小车的初始位置和车头方向,画出小车,在没有按键的情况下,进入一个循环系统小车自动向前运动,直到撞墙,有按键的情况下,判断按键的性质确定车头的方向,计算小车的新坐标,进入另一个画车循环,一直循环,直到结束。

第2章 概要设计

2.1总体结构

本程序主要分为五个模块:主函数模块,图行驱动模块,场景游戏模块,游戏过程模块,结束模块。主函数模块实现函数调用。图行驱动模块对图行操作系统进行初使化。场景游戏模块建立简单的游戏界面。游戏过程模块画小车,并通过键盘控制小车的运动。结束模块关闭作图系统,结束程序(如图2.1)。

图2.1功能模块

1 主函数模块:本模块主要实现函数的调用,一共四个函数。

2 图行驱动模块:本模块主要是实现对图形系统进形初始化以及做出简单界面,设置屏幕背景颜色,还有显示游戏开始时的菜单。

3场景游戏模块:本模块主要是实现画出游戏界面,利用循环画出四面墙,屏幕背景为蓝色。

4游戏过程模块:本模块主要是实现画出初始小车及显示其位置,用swich-case()来控制小车的移动情况。

5结束模块:本模块主要是实现最后清屏以及关闭作图系统,显示游戏结束菜单。

第3章 详细设计

3.1主函数模块

控制整个程序的运行,控制菜单操作,通过主函数模块分别调用各个模块,实现各项功能,流程如图3.1所示。

图3.1 主模块流程图

主函数主要完成函数的调用,一共有四个函数:画图系统初始化函数,画开始游戏界面函数,游戏过程函数,关闭图形系统函数。

2.2图形驱动模块

此模块完成图形操做系统初始化,选择适配器,设置背景颜色及前景色,显示进入游戏界面,流程如图3.2所示。

图3.2 显示模块流程图

图形系统初始化:程序自动在当前选择适配器,背景色设为蓝色,前景色为白色,画四面墙为游戏开始界面,outtextxy()函数确定字符显示位置及其内容。

2.3场景游戏模块

此模块主要完成在完成图形初始化后画出游戏界面,该游戏界面为四面墙,屏幕背景为蓝色,画墙面用了两个for循环完成,流程如图3.3所示。

图3.3场景模块流程图

3.4游戏过程模块

此程序是本游戏的主体部分,主要完成游戏的运动过程,首先确定小车的位置和车头方向,接着在这个位置画小车,利用循环画小车,在没有按键情况下,进入画小车循环,直到小车撞墙结束整个程序。如果有按键则判断按键的数值,计算新的坐标,再判断小车头是否撞墙,如果撞墙则结束循环显示结束出结束界面的内容,如果不 撞墙则进入画小车循环,接着进入有没有按键的循环,直到整个程序结束为止。流程如图3.4所示。

图3.4游戏模块流程图

3.5结束模块模块

此模块主要完成关闭图形操作系统,流程如图3.5所示。

图3.5结束模块流程图

第4章 调试分析

问题1:由于在编源代码的时候我没有掌握好屏幕的坐标,导致小车画不出来,也答不到我想要的停止效果。

解决办法:我就采用尝试法修改错误,我的程序中有四个坐标,我就已次改变一个坐标,一次改变一点坐标的大小,最终完成了我想要的效果。

问题2:小

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值