基于C语言的课程设计正弦波的模拟.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
C语言程序设计报告 《简谐振动实验的模拟》 课程设计报告 题 目 简谐振动实验的模拟 学 号姓 名 XX 年级专业 2015级电子信息工程 指导教师 仝 完成日期 2016 年 6 月 12日 安徽师范大学物理与电子信息学院 College of Physics and Electronic Information, Anhui Normal University 一、 问题描述 二、 基本要求 三、 系统分析和过程 四、 流程图 五、 源程序代码 六、 小结及收获体会 七、 评定意见 :问题描述 本程序设计是一个将物理问题与C语言程序设计结合的程序设计 问题。能够实现用用C语言编程让计算机模拟简谐振动的实验,可 以改变振动函数的各参数,绘出不同振幅、频率和相位的简谐振动图 形。以及完成两简谐振动的合成。 二:基本要求 1) 能够实现简谐振动的模拟; 2) 简谐振动的振幅、频率以及和位由键盘输入; 3) 能够实现动画效果。 三、系统分析和过程 简谐振动的函数是y=A*cos(w*x+c),是一条余弦函数。 振幅、频率和相位由键盘输入,最重要的是要使用到画图函数, 并且实现动画效果。整个程序包括头文件,函数及变量声明,main 主函数,菜单页面函数,画图函数,输入处理函数和图形初始化两数。 先用一个开始页面的函数,说明该程序的基本功能, 再进入菜单页面,从屮可以选择操作(输入处理函数选项、画图选项、 退出选项),到其他函数。在输入处理函数中输入振幅、频率、相位, 在画图函数中进行画图,能够实现动画效果,退出选项退出运行。 难点是画图函数中画线,画图框,和实现动态效果,要运用到专 门的函数,要了解他们的使用方法,作用,还要用到循环,要求能够 在屏幕屮显示出同方向传播的两列简谐波和它们的合成波,因此实现 此功能必须引用图形函数,和其中很多功能的应用。 在屏幕中我们要实现三列波动态的演示效果,并能够在动态图 形中观察三波的关系。因此在这里我们要引用时间函数来实现此 功能。 本实验中我们调用了以下库函数: ftinclude stdio. h ttinclude stdlibeh #include graphics.h ttinclude conio- h ttinclude ftinclude〈 ftinclude 〈time. h 为实现功能写了以下2个函数: void quxian(); void quxian(); /*图形绘制界面*/ void zuobiao(); void zuobiao(); /*坐标轴绘制*/ 四、流程图 程序开始 进入菜单页而 用丿输入A, w, c 进入图形模式,绘 制图形 v 退出图形模式 退出程序 五:程序清单 #include stdio.h #include stdlib.h #include graphics.h #include conio.h #include math.h #define PI 3.14 void quxian(float A,float w, fl oat c) { float t,r; for(t=0;t=640;t+=0.005) { r=255.0?A*cos(w*t+c/l 80.0*PI); putpixel(t+ 100,r,4); /*涯指定位置画一像索。void far putpixel (int x, int y, int pixelcolor); 其中(x,y)是坐标,pixelcolor是像素禹颜色*/ } } void zuobiao(float h) { line(100,h,100,h+140); /*画 y 轴*/ line(0,h+70,640,h+70); /*画 x 轴*/ outtextxy(105,h+80,n0wn); outtextxy(620,h+80,tn); oimextxy(80,40「Tl“); /*用于在指定位置上显示一字符串*/ line(640,h+70,620,h+65); /*在指定两点I田i线,为x轴箭头*/ line(640,h+70,620,h+75); line(100,h-5,105,h+15); /*imi y 轴箭头*/ line(100,h-5,95,h+15); } void main() { float A,w,c; int gdriver,gmode; gdrivei?二 DETECT; initgraph(gdriver,gmode,C:\\TC20\\BGI”); cleardevice(); outtextxy(0,5,please input A,w,c”); gotoxy(45,l); scanf(”%f,%f,%f”,A,w,c);

文档评论(0)

ggkkppp + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档