重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
简谐运动的方程:
成都创新互联于2013年开始,是专业互联网技术服务公司,拥有项目做网站、网站设计网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元兴城做网站,已为上家服务,为兴城各地企业和个人服务,联系电话:18980820575
简谐运动的位移x=R*cos(ωt+φ),
简谐运动的速度v=-ω*R*sin(ωt+φ),
简谐运动的加速度a=-(ω^2)R*cos(ωt+φ),
同方向、不同频率的简谐振动的合成
x1=A1cos(2πf1t+φ10)和x2=A2cos(2πf2t+φ20),
x = x1 + x2;
相互垂直,不同频率的简谐振动的合成见:
函数void sound(unsigned frequency);
以指定频率打开PC扬声器
nosound :关闭PC扬声器
原型为: void nosound(void);
delay 用于将程序的执行暂停一段时间(毫秒)
原型为:void delay(unsigned milliseconds);
如delay(5000)表示延迟5秒
sound()函数用于让pc喇叭发声,nosound()函数用于使正在发声的pc喇叭静音。要使程序中的发声的具体方法,是调用sound()函数并延迟一定时间,然后使用nosound()函数静音,具体语句实现方法举例如下:
sound(100);
delay(100);
nosound();
它们三个都在“dos.h”里面,
至于d(x,y,z)应该是程序员自己定义的函数,我没见过。
把所有用到的量用变量表示,然后按照公式模拟就行了,动画可以用窗口的gui
函数:
voiddelay(uinti)
{
while(i)i--;
}
这样的延迟设计很不好,因为受影响的因素太多。
首先就是机器的CPU频率,快的CPU执行i--这句的机器时间短,慢的机器就很慢。
其次是当前机器的负荷情况,负荷较重时,系统给当前进程分配的CPU时间少,执行这些语句的机会就少,延迟就增加了。
影响因素还有很多在此不再列举。
做延迟程序主要有以下几种方法:
1.定时器法
用CWnd::SetTimer()函数设置定时器,当定时时间到时发送WM_TIMER消息触发CWnd::OnTimer()函数,重载它把自己的代码放进去。
SetTimer()参数为毫秒,此方法定时不高,受系统负荷影响。
2.休眠法
调用系统API函数Sleep(2000);参数单位是毫秒,2000代表2秒。
此方法主要收到当前系统负荷的影响,定时不太准确
3.时刻比较法
定义两个CTime变量,一个用于记录起始时刻,另一个放在循环体中不断刷新当前时刻,并减去起始时刻,自己计算是否到时间了。
此方法因CTime变量只能获取秒级的时刻,且收到系统负荷影响,精度也较低。
4.CPU滴答查询法
利用两个API函数QueryPerformanceFrequency()和QueryPerformanceCounter()分别获取CPU的频率和CPU滴答数,依时刻比较法自己计算时刻差值。
因为CPU滴答数是等于CPU的机器周期的,所以是Windows系统里最最精确的计时方法了。现在的CPU主频都是GHz级的,因此理论上计时精度可以到纳秒。
只要系统负荷不太重,此法可用于极其精确的延时程序。
因为Windows并不是实时操作系统,因此对于太过精确的计时,还是无能为力的。
#include "stdio.h"
#include "conio.h"
#include "graphics.h"
#include "math.h"
#define closegr closegraph
void initgr(void) /* BGI初始化 */
{
int gd = DETECT, gm = 0; /* 和gd=VGA,gm=VGAHI是同样效果 */
registerbgidriver(EGAVGA_driver);/* 注册BGI驱动后可以不需要.BGI文件的支持运行 */
initgraph(gd, gm, "");
}
main()
{
int i, j;
double a=5;
double t;
initgr(); /* BGI初始化 */
/*y=x; */
moveto(0,getmaxy()/2);
for (i=0;i4*314;i++) {
t=(double)i/10;
j=(int)(a*(1-cos(t/10))*10);
lineto(a*(t-sin(t/10)*10),getmaxy()/2-j);
}
getch(); /* 暂停一下,看看前面绘图代码的运行结果 */
closegr(); /* 恢复TEXT屏幕模式 */
}
C语言库函数,常用库函数有:
1、scanf格式输入函数
2、printf格式输出函数
3、systemdos命令函数
4、sort排序
5、main主函数
6、fgets文件读取字符串函数
7、fputs文件写入字符串函数
8、fscanf文件格式读取函数
9、fprintf文件格式写入函数
10、fopen打开文件函数
11、getchar输入字符函数
12、putchar输出字符函数
13、malloc动态申请内存函数
14、free释放内存函数
15、abs求绝对值数学函数
16、sqrt求平方根数学函数
扩展资料
语言组成:
1、数据类型
C的数据类型包括:整型、字符型、实型或浮点型(单精度和双精度)、枚举类型、数组类型、结构体类型、共用体类型、指针类型和空类型。
2、常量与变量
常量其值不可改变,符号常量名通常用大写。
变量是以某标识符为名字,其值可以改变的量。标识符是以字母或下划线开头的一串由字母、数字或下划线构成的序列,请注意第一个字符必须为字母或下划线,否则为不合法的变量名。变量在编译时为其分配相应存储单元。
3、数组
如果一个变量名后面跟着一个有数字的中括号,这个声明就是数组声明。字符串也是一种数组。它们以ASCII的NULL作为数组的结束。要特别注意的是,方括内的索引值是从0算起的。
4、指针
如果一个变量声明时在前面使用 * 号,表明这是个指针型变量。换句话说,该变量存储一个地址,而 *(此处特指单目运算符 * ,下同。C语言中另有 双目运算符 *) 则是取内容操作符,意思是取这个内存地址里存储的内容。指针是 C 语言区别于其他同时代高级语言的主要特征之一。
参考资料来源:百度百科-函数