C课程设计-WINDOWS程序设计模拟交通灯资料.docx

C课程设计-WINDOWS程序设计模拟交通灯资料.docx

  1. 1、本文档共18页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
PAGE \* MERGEFORMAT18 目录 目录 1 一 设计目的 2 二 课程设计的内容 2 三 课程设计的要求与数据 2 四 课程设计应完成的工作 2 五 总体设计 3 六 详细设计 3 七 调试分析 14 八 总结 18 九 成员设计内容 18 十 参考资料 18 一 设计目的 进一步加深、巩固所学专业课程(《C语言程序设计》)的基本理论知识,理论联系实际,进一步培养自己综合分析问题和解决问题的能力。掌握运用C语言独立地编写、调式应用程序和进行其它相关设计的技能。 二 课程设计的内容 模拟十字路口的红绿灯显示程序,每个方向有直行、左转和右转 3 车道,直行红灯70 秒,绿灯30 秒,黄灯3 秒;转弯红灯80 秒,绿灯20 秒,黄灯3 秒;人行道红灯70 秒,绿灯30 秒;实现一个方向的红绿灯显示模拟实现,另一方向的计时器相同,因此不另设。 三 课程设计的要求与数据 3.1用基于C语言的Windows程序实现系统; 3.2应用一个数字计时器显示转弯红黄绿灯的计时,另一个数字计时器显示直行红黄绿灯的计时; 3.3应用逼真的箭头指示灯进行状态的转换; 3.4绘画界面模拟真实道路实况,包括路面、斑马线、黄线、车道线等的颜色与形状都符合真实道路的标准; 四 课程设计应完成的工作 4.1绘画界面; 4.2设计逻辑功能进行测试,测试的结果与实际相比较; 4.3撰写课程设计报告。内容包括: 1) 封面扉页 2) 设计任务书 3) 目录 4) 总体设计方案(包括流程图) 5) 使用说明及运行实例(包括界面) 6) 成员设计内容简介 7) 项目源程序代码(注意注释的使用) 8) 指导教师评语 五 总体设计 5.1 :设定界面颜色。即背景颜色。 5.2 :画出路面。包括路面的长度宽度、路面上的斑马线、黄线、道路分界线。 5.3 :画出灯的边框。各个方向的左转弯、右转弯、直行和红绿灯的边框。 5.4 :画出灯不亮时的灯的形状。采用深灰色来显示灯不亮。 5.5 :画出灯亮。灯一共有三种状态,红色,黄色,绿色。红色代表停止,黄色代表即将停止,绿色代表通行。 5.6 :计时器。分别用两个计时器来显示转弯与直行状态的计时。 5.7 :总体逻辑设计。左右转弯同步,通行20S,黄灯3S;直行与人行道红绿灯同步通行30S,直行黄灯3S。 六 详细设计 6.1 :设定界面颜色。 应用了Windows程序里的画刷对整个背景刷成三原色相应的颜色RGB(200,150,0)。程序如下: //设定界面颜色 hBrush = CreateSolidBrush(RGB(200,150,0)); SelectObject(hdc, hBrush); Rectangle(hdc, 0, 0, 1700, 1000); 6.2 :画出路面。包括路面的长度宽度、路面上的斑马线、黄线、道路分界线。 1、首先是画出道路。1)与背景颜色同理,应用了自己创建的画刷hBrush= CreateSolidBrush(RGB(120,120,120));将道路刷成灰色。分别刷南北方向与东西方向的两个矩形Rectangle(hdc, 0, 150, 1200, 500 ); Rectangle(hdc, 430, 0, 780, 800); 2)创建一画笔hPen = CreatePen(PS_SOLID,0,RGB(120,120,120));与道路颜色一样的,将矩形边上系统默认的黑色边化成道路颜色。程序如下: //画出道路 hBrush = CreateSolidBrush(RGB(120,120,120)); SelectObject(hdc, hBrush); hPen = CreatePen(PS_SOLID,0,RGB(120,120,120)); SelectObject(hdc,hPen); Rectangle(hdc, 0, 150, 1200, 500 ); hBrush = CreateSolidBrush(RGB(120,120,120)); SelectObject(hdc, hBrush); Rectangle(hdc, 430, 0, 780, 800); DeleteObject(SelectObject(hdc,GetStockObject(BLACK_PEN))); 2、画出道路上的黄线。将矩形Rectangle(hdc, 0, 320, 320, 330);刷成黄色就得到了东方向的黄线,其它方向同理。程序如下: //东方向黄线 hBrush = CreateSolidBrush(RGB(200,200,0)); Sel

文档评论(0)

钱缘 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档