c语言课程设计案例-五子棋.ppt_第1页
c语言课程设计案例-五子棋.ppt_第2页
c语言课程设计案例-五子棋.ppt_第3页
c语言课程设计案例-五子棋.ppt_第4页
c语言课程设计案例-五子棋.ppt_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、C语言综合编程训练,C程序组成,开发方法: 自上向下,逐步细化,模块化设计,结构化编码,一般来说,开发一个软件要经过以下步骤:,确定软件的功能,定义核心数据结构,对整个软件进行功能模块划分,编写程序实现各功能模块,对源程序进行编译和调试,形成软件产品,功 能 分 析,五子棋棋盘,两位玩家交替行棋,五子相连判定赢棋,定义核心数据结构,定义char gChessBoard1919;表示棋盘,棋盘上每个交叉点有三种状态,当前光标位置表示,struct point int x; int y; ;,程序的模块划分,查看源程序,程 序 的 编 制 细 节,查看源程序,定义核心数据结构,初始化,接收按键,移

2、动光标,落子与判定胜负,main()函数,程序中用到的库函数介绍,bioskey,程 序 的 编 制 细 节,程序中用到的库函数,textmode,clrscr,putch,cputs,gotoxy,textcolor,delay,sound 与nosound,用 户 手 册,查看源程序,图形设计,1 显示系统 显示器:CRT(阴极射线管)与控制电路组成 适配器(图形卡):CPU与显示器的接口,由寄存器组、存储器和控制电路组成,参考书:C高级实用程序设计 王士元 清华大学出版社,将要显示的字符和图形以数字形式存储在卡上的视频RAM中, 再转换成视频模拟信号传送给相应的显示器,显示模式 文本模式

3、:显示缓冲区中存放显示字符的代码(ASCII码或汉字机内码),及字符的属性,显示屏幕按字符分成若干行、列,如80列25行 图形模式:显示缓冲区中存放显示屏幕上每点(象素)的颜色或灰度值,显示屏幕按象素分成若干行、列,如640480,一般开机后的模式都是80 25的文本模式,2 Turbo C绘图 Turbo C支持的适配器和图形模式,图形库文件与图形头文件 graphics.lib与graphics.h 图形显示的坐标与象素,图形系统的初始化 图形系统初始化函数 void initgraph(int *driver,int *mode,char *pathtodriver) 其中; drive

4、r显示适配器驱动程序的枚举变量 mode图形模式(模式号或模式标识符) pathtodriver适配器驱动程序的寻找路径,“”表示在当前目录下(*.BGI) enum graphics_driverDETECT,CGA,MCGA,EGA,EGA64,VGA,PC3270; DETECT自动检测所用显示适配器的类型,将相应的驱动程序装入,并将其最高显示模式作为当前显示模式,使用图形方式时先进行图形系统初始化, 检测或设置指定的图形模式,#include main() int driver=DETECT,mode; initgraph( ,initgraph(,#include main() in

5、t driver=VGA; int mode=VGAHI; initgraph( ,将指定模式的驱动程序 (*.GBI) 从当前路径下调入内存,关闭图形系统回到文本模式,图形程序的独立运行问题 为使图形方式的C源程序能够脱离TC环境下运行,应对EGAVGA显示器的驱动程序.BGI转换成.OBJ文件: C:TCBGIOBJ EGAVGA 然后,将EGAVGA.OBJ与GRAPHICS.LIB进行连接: C:TCTLIB LIBGRAPHICS.LIB+EGAVGA.OBJ 程序中,initgraph()调用前要用registerbgidriver()进行登记: registerbgidriver

6、(EGAVGA_driver);,清屏和恢复显示方式函数 void cleardevice(void); void closegraph(void); 基本图形函数 画点:putpixel() getpixel() 坐标移动:moveto() moverel() getx() gety() 画线:line() lineto() linerel() 画矩形和条形图:rectangle() bar() 椭圆、圆、圆弧和扇形:ellipse() circle() arc() pieslice() 颜色控制函数 设调色板:setpalette() 设背景色:setbkcolor() 设绘图色:setc

7、olor(),关闭图形系统回到文本模式,设定线型函数: setlinestyle() 填充函数 设定填充模式:setfillstyle() 常用函数:bar3d() sector() fillellipse() fillpoly() 屏幕操作函数 屏幕图象存储与显示: getimage() putimage() imagesize() 视口函数 setviewport() clearviewport(),图形方式下的文本输出 文本输出:outtext() outtextxy() 定义文本字型:settextstyle(),文本的屏幕输出,#include 屏幕坐标,文本方式控制函数 void

8、textmode(int newmode); Turbo C支持5种文本显示方式,文本方式下颜色控制函数 文本颜色 textcolor() 文本背景 textbackground() 文本属性 textattr(),字符显示亮度控制函数 highvideo() lowvideo() normvideo(),窗口设置与文本输出函数 window() cprintf() cputs() putch() 清屏与光标操作函数 clrscr() clreol() delline() gotoxy() wherex() wherey() 屏幕文本移动与存取函数 movetext() gettext() p

9、uttext(),菜单及其设计要点,菜单作用:由若干任务项组成的画面(界面),选择一项按键确定后,即执行相应的功能 菜单显示方式:文本方式菜单与图形方式菜单 菜单种类:固定式菜单、弹出式菜单,下拉式菜单,optmenu.c popdown.c text_men.c,menu_s.c menu_gra.c plane_e.c,菜单设计要点: 菜单窗口图象的存储与显示 新的窗口出现时,会覆盖原窗口的区域 可事先保存要覆盖的区域,新窗口消失后,再恢复原区域的显示 图形方式:getimage() putimage() imagesize() malloc() 文本方式:gettext() puttext() 菜单窗口和菜单

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论