C语言课程设计简谐振动实验的模拟.doc

  1. 1、本文档共18页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C语言课程设计简谐振动实验的模拟

《C语言程序设计》 课程设计报告 题 目 简谐振动实验的模拟 姓 名 学 号 同组人员 学 号 年级专业 09电子信息工程(2)班 指导教师 完成日期 2010 年 6 月 13 日 目 录 一、问题描述 二、基本要求 三、系统分析和过程 四、流程图 五、源程序代码 六、小结及收获体会 七、参考文献 八、评定意见 一:问题描述 本程序设计是一个将物理问题与C语言程序设计结合的程序设计问题。能够实现用用C语言编程让计算机模拟简谐振动的实验,可以改变振动函数的各参数,绘出不同振幅、频率和相位的简谐振动图形。以及完成两简谐振动的合成。 二:基本要求 1) 能够实现简谐振动的模拟; 2) 简谐振动的振幅、频率以及相位由键盘输入; 3) 能够实现动画效果。 三、系统分析和过程 简谐振动的函数是y=a*cos(w*x+f),是一条余弦函数。 振幅、频率和相位由键盘输入,最重要的是要使用到画图函数,并且实现动画效果。整个程序包括头文件,函数及变量声明,main主函数,开始页面函数,菜单页面函数,画图函数,输入处理函数和图形初始化函数。先用一个开始页面的函数,说明该程序的基本功能, 再进入菜单页面,从中可以选择操作(输入处理函数选项、画图选项、退出选项),到其他函数。在输入处理函数中输入振幅、频率、相位,在画图函数中进行画图,能够实现动画效果,退出选项退出运行。 难点是画图函数中画线,画图框,和实现动态效果,要运用到专门的函数,要了解他们的使用方法,作用,还要用到循环,要求能够在屏幕中显示出同方向传播的两列简谐波和它们的合成波,因此实现此功能必须引用图形函数,和其中很多功能的应用。 在屏幕中我们要实现三列波动态的演示效果,并能够在动态图形中观察三波的关系。因此在这里我们要引用时间函数来实现此功能。 本实验中我们调用了以下库函数: #include stdio.h #include stdlib.h #include graphics.h #include conio.h #include math.h #include time.h 为实现功能写了以下5个函数: void welcome(); /*开始页面*/ void menu(); /*菜单页面*/ void input(); /*输入处理函数*/ void initial(); /*图形初始化*/ void draw(); /*画图及合成处理过程*/ 在以下的清单中对它们列出,且简要说明。 四、流程图 True False 用户输入1 (合成) 2 五:程序清单 #includestdio.h #includestdlib.h #includegraphics.h #includeconio.h #includemath.h #includetime.h #define GAIN 10 /*增益*/ void welcome( ); /*初始界面*/ void menu( ); /*选择菜单页面*/ void input( ); /*输入处理函数*/ void draw( ); /*画图函数*/ void initial( ); /*图形初始化*/ float a1,w1,f1; /*两振动的参数*/ float a2,w2,f2; int main( ) { welcome( ); menu( ); return 0; } void welcome( ) { char s[40]; /*屏幕初始化*/ int gdriver,gmode; gdriver=DETECT; initgraph(gdriver,gmode,c:\\tc); cleardevice( ); setbkcolor(0); /*设置背景为黑色*/ setfillstyle(6,14); /*用黄色粗“\\”线填充*/ bar(2,2,638,478); setfillstyle(1,1); bar(8,8,632,472); setviewport(40,40,600,440,1); setfillstyle(1,2);

文档评论(0)

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

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

1亿VIP精品文档

相关文档