C语言程序设计课程设计
2.1.6PrintScore()输出成绩
利用设置实体填充模式填充矩形条清除掉前次的成绩,再利用 sprintf()函数将 整数转换为字符串的形式,再利用 outtextxy()函数将成绩输出。 2. playWin()输出胜利者结果
根据分数值 score1 和 score2 的大小得出下棋的结果,输出赢者信
摘要
程序设计语言类课程的指导思想是:使学生通过学习即高级编程语言的知识、 编程技术和基本算法,又掌握程序设计的思想和方法,更具备利用计算机求解实 际问题的能力,能灵活运用高级语言进行程序设计[6]。
其实认真学习一门语言并不困难,关键要所追求的学习的方法和途径。一条 好的途径便于快速掌握,熟悉运用语言。学习的目的在于应用,理论来源于实践, 如果在学习中能够通过有效的途径如自己动手设计一个功能比较前大的开发系 统,借鉴于各种工具书,善于总结。定可以很好的效果。正是如此,使我们在这 几年中对语言学习有了很大提高。通过实践的学习,我认到学好计算机要重视实 践操作,不仅仅是学习 C 语言,还是其它的语言,以及其它的计算机方面的知识 都要重在实践,所以后在学习过程中,我会更加注视实践操作,使自己便好地学 好计算机。 关键词: 掌握 编程语言的知识 ;编程技术;基本算法思想和方法
2.1.1main()主函数:....................................................................................4 2.1.2DrawQp()画棋盘函数:........................................................................ 4 2.1.3MoveColor()恢复原来格子的状态...................................................... 4 2.1.4playtoplay()人人对战函数................................................................ 4 2.1.5QpChange()判断棋盘变化.................................................................... 5 2.1.6PrintScore()输出成绩........................................................................ 5 2.2.子函数功能一览表.........................................................................................5 2.3. 主函数流程图...............................................................................................6 2.3.1 棋盘绘制流程图...................................................................................7 2.4.函数解析.........................................................................................................7 2.4.1 图形库文件...........................................................................................7 2.4.2 图形初始化函数...................................................................................7 2.4.3 设置背景颜色.......................................................................................7 2.4.4 画线.......................................................................................................8 2.4.5 设置填充模式和颜色...........................................................................8 2.4.6 方向操作...............................................................................................9 2.4.7 落棋位置判断.....................................................................................10 2.4.8 判断棋盘的变化和改变棋子的颜色.................................................11 2.4.9 成绩输出............................................................................................13 2.4.10 输出成绩...........................................................................................13 2.4.11 输出最后的胜利者结果....................................................................................................................................................3
1.1 设计目的:........................................................................................................3 1.2.意义:...............................................................................................................3 黑白棋 4 2.1.用到的函数:.................................................................................................4
2.2.子函数功能一览表
序号
1
2
3
4
5
6
名称 DrawQp SetPlay Playtoplay MoveColor QpChange DoScore
功能
绘制棋 设置棋子 人人对战函
2.1.3MoveColor()恢复原来格子的状态 由于棋手在走棋的时候,他的棋子总是首先出现在棋盘的左上角,棋手要通过移 动光标走到要落子的位置,在经过的路程上显示当前棋子,就会覆盖原来的棋盘 状态,所以一旦棋子走过后,就应恢复原来的状态,是空格的依然显示空格,是 棋子的就显示原来棋子的颜色。因为棋子移动过程并没有改变数组元素的值,所 以可以根据数组元素的值判定原来的状态,如果值是 1,就恢复白色棋子,值是 2 则恢复黑色棋子,否则恢复蓝色空格。
3
黑白棋
2.1.用到的函数:
2.1.1main()主函数: 在主函数中,棋盘状态用数组 a[8][8],初值为 0,表示空格。用图形系统画出 棋盘,调用 playtoplay()人人对弈函数开始游戏,一旦游戏结束后,关闭图形 系统,程序结束。
2.1.2DrawQp()画棋盘函数: 背景颜色设为蓝色,从坐标(100,100)开始每隔 40 个单位用白色画一条水平 直线,一条垂直线,构成棋盘,用循环语句实现。函数 setfillstyle()可以设 置填充模式和填充颜色,fillellipse(int x,int y,xradius,int yradius)以 x 和 y 为圆心,xradius 和 yradius 为水平和垂直轴画一填充椭圆,当 xradius 和 yradius 相等时,则画出的是圆,用它表示棋子。 1. SetPlayColor()设置棋子的颜色: 函数的参数为整型变量 t,根据 t 的值来设计填充棋子的当前颜色,值为 1 代表 白棋,值为 2 代表黑棋。
2.5.源代码................................................................................................ 14 2.6 运行结果............................................................................................. 23 2.7 心得体会............................................................................................. 23 参考文献......................................................................................................................25 致谢·······························································26