- 1、本文档共18页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《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);
您可能关注的文档
最近下载
- 2025河北秦皇岛市海港区招聘中小学教师371人笔试参考题库附答案解析.docx VIP
- 《项目管理基础教程》课件.ppt VIP
- 青霉素过敏试验及过敏反应的预防(共35张PPT).pptx VIP
- 第一章 运动的描述【速记清单】(解析版)-2024-2025学年高一物理单元速记·巧练(人教版2019必修第一册).docx VIP
- 第二章 匀变速直线运动的研究【速记清单】(解析版)-2024-2025学年高一物理单元速记·巧练(人教版2019必修第一册).docx VIP
- 农行某市支行各岗位廉政风险点及防控措施一览表(最新最全面版本) .pdf VIP
- Positioning课件.ppt VIP
- 建行某市支行各岗位廉政风险点及防控措施一览表(最全最新版本) .pdf VIP
- 徕卡TS30全站仪简易操作说明.pdf VIP
- 川渝地区矿山生态修复技术规范 第二部分 建材矿山.pdf VIP
文档评论(0)