C语言怎么编写正弦波

C语言怎么编写正弦波... C语言怎么编写正弦波 展开
 我来答
小夏聊生活
高能答主

2019-12-11 · 专注于分享生活知识,热爱生活
小夏聊生活
采纳数:450 获赞数:114651

向TA提问 私信TA
展开全部

源代码如下:

#include#include#define EX 0.000001

#define PI 3.14159265

int main()

{

double x=0.0, temp=1.0, sin=0.0;

int i;

printf("Please input a degree:");

scanf("%lf",&x);

x=x*PI/180;

temp=x;i=0 ;

while ( fabs(temp) >EX ) ...{

sin += temp;

i += 2;

temp = (-1) * temp*x*x/( (i+1)*(i) );

}

printf("sin(%lf) = %lf ",x,sin);

printf("The number is %d ",i);

return 0;

}

扩展资料

C语言编写一个程序输出一个正方形的源代码如下:

#include 

int main()

{

int i,j,n;

scanf("%d",&n);

for(i=0;i        

printf("*");

else 

printf(" ");

 }

printf("\n");

}

return 0; 
}

Jekey305
推荐于2017-12-15 · TA获得超过502个赞
知道小有建树答主
回答量:261
采纳率:0%
帮助的人:206万
展开全部
#include <conio.h> /*字符处理函数的头文件 */
#include <graphics.h> /*绘图函数的头文件 */
#include <math.h>
#define PI 3.14159

void main()
{
double x,y,dt=1.0/2/PI*0.01;
int sx,sy,i;
int gdrver=VGA, gmode=2; /*定义图形模式参数:16色,640×480*/
initgraph(&gdrver,&gmode,"d:\\bc4\\bgi"); /*图形模式驱动函数 */
cleardevice(); /*清理屏幕*/
setbkcolor(BLACK);
setcolor(WHITE); /*设置绘图颜色 */
/*开始画线 */
x=dt; y=sin(dt);
sx=(int)(640.0*dt); sy=(int)(240.0-480.0*y);
line(0,240,sx,sy);
for(i=1;i<100;i++)
{
sx=(int)(640.0*dt); sy=(int)(240.0-480.0*y);
lineto(sx,sy);
}
getch(); /*从键盘输入任意字符 *、
closegraph(); /*关闭绘图模式,回到文本状态 */
}

d:\\bc4\\bgi为图形驱动程序的所在位置,根据你的TC目录来定。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
创作者AkcX7kYRa5
2020-04-23 · TA获得超过3680个赞
知道大有可为答主
回答量:3041
采纳率:24%
帮助的人:134万
展开全部
以经验看来你是要做单片机方面波形输出,dac输出,或者做模拟示波器什么的。
有两种办法:
一是查表法,优点是计算量少,占用ram少,算法简单,缺点是占用储存内存较多,参数比较固定。
查表法的基本思路就是,通过把sin函数进行采样,得到的值记录成一个表,将表以数组的形式放在程序中,通过循环读取数组的值达到查表的目的。
二是计算值法,优缺点跟查表法恰好相反。
计算值法的基本思路是通过特定算法,将特定时间所需的特定值计算出来。
这里给你提供一个计算值法的核心代码,作为指导建议,根据实际情况修调。
double sinwave(double scale,int cycle_time)
{
int a;
double pi = 3.1416;
int resolution_ratio = 100;//分辨率,描述采样量,越高的分辨率计算越多
for(a=0;a
评论
0
0
加载更多
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
创作者voA9X7lvR9
2019-05-31 · TA获得超过3691个赞
知道大有可为答主
回答量:3147
采纳率:27%
帮助的人:213万
展开全部
#include
/*字符处理函数的头文件
*/
#include
/*绘图函数的头文件
*/
#include
#define
PI
3.14159
void
main()
{
double
x,y,dt=1.0/2/PI*0.01;
int
sx,sy,i;
int
gdrver=VGA,
gmode=2;
/*定义图形模式参数:16色,640×480*/
initgraph(&gdrver,&gmode,"d:\\bc4\\bgi");
/*图形模式驱动函数
*/
cleardevice();
/*清理屏幕*/
setbkcolor(BLACK);
setcolor(WHITE);
/*设置绘图颜色
*/
/*开始画线
*/
x=dt;
y=sin(dt);
sx=(int)(640.0*dt);
sy=(int)(240.0-480.0*y);
line(0,240,sx,sy);
for(i=1;i<100;i++)
{
sx=(int)(640.0*dt);
sy=(int)(240.0-480.0*y);
lineto(sx,sy);
}
getch();
/*从键盘输入任意字符
*、
closegraph();
/*关闭绘图模式,回到文本状态
*/
}
d:\\bc4\\bgi为图形驱动程序的所在位置,根据你的TC目录来定。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式