C语言利用数组画正弦函数 用c语言编程求正弦值

c语言输出 ‘*’代表函数的线条,画出正弦函数,我刚学C语言的数组求画图形的方法,最好用简单点的语言。

#include stdio.h

目前创新互联公司已为近千家的企业提供了网站建设、域名、网络空间、网站托管、企业网站设计、驿城网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。

#include math.h

void main()

{

double y;

int x,n;

for (y = 1; y =-1; y-=0.1)

{

for (x = 0; x = 62; x++)

{

if(y=0)  

n = asin(y) * 10;

else 

n = -asin(y) * 10;

if ((y=0(x == n||x==31-n))||(y0(x==31+n||x==62-n)))      

printf("*");

else    

printf(" ");

}

printf("\n");

}

}

(C++)用数组如何"用*号输出正弦函数图形"?

#includestdio.h

#includemath.h

main(){

double y;

int x,m,i;

printf("y=sin(x) [0x2*pi]\n");

for(y=1;y=-1;y-=0.1){

if(y=0){

m=asin(y)*10;

for(x=1;xm;x++)printf(" ");

printf("*",m);

for(;x31-m;x++)printf(" ");

printf("*\n");}

else{

m=-1*asin(y)*10;

for(i=0;i32;i++)printf(" ");

for(x=1;xm;x++)printf(" ");

printf("*",m);

for(;x31-m;x++)printf(" ");

printf("*\n",m);

}

}

}

回答者: 依旧飘流 - 魔法师 五级

c语言画正弦函数图像

hehe

首先这个程序只能输出这种 不像正弦 也不象余弦的曲线。

因为你的程序的算法是每行有2个星星

其次,15+45=60,约等于2*PI

就是说,前面的15是PI/2,后面的45是PI/2*3,

输出的是1个周期的。sin(PI/2)=1。。这回懂了么?

怎样用c语言画正弦函数

1、首先,打开VS2019,并且创建一个C语言源文件,会看到如下的页面。

2、鼠标在下图红色圈所示的区域单击一下。

3、之后,再按Enter键,会看到新的一行。

4、在这一行中输入:#includemath.h。

5、接着,在void main()中去定义一个单精度型变量。

6、定义完回车后,输入a=sin(90);注意,90指的是90弧度。

7、再次回车,输入printf("%f",a);。

8、可以按F5键去运行这段程序,会看到如下的结果。即90弧度的正弦值约为0.893997。

c语言画正弦函数

首先,你输出的不是正弦图像,而是反正弦图像。

#includestdio.h

#includemath.h

int

main(){

double

y;

int

x,m,i;

printf("y=sin(x)

[0x2*pi]\n");

for(y=1;y=-1;y-=0.1){//表示y的取值范围是[-1,1]

if(y=0){

m=asin(y)*10;

//反正弦函数,确定空格的数量,最大值为15

for(x=1;xm;x++)printf("

");

//printf("*",m);

printf("*");//注意此时不换行,因为后面还有一个点

for(;x31-m;x++)printf("

");//输出第二个点,并换行

printf("*\n");}

else{//同理输出y小于0的点

m=-1*asin(y)*10;

for(i=0;i32;i++)printf("

");

for(x=1;xm;x++)printf("

");

//printf("*",m);

printf("*");

for(;x31-m;x++)printf("

");

printf("*\n",m);

}

}

getchar();

return

0;

}

用C语言中的数组编写出正弦波、方波和三角波,写一种就可以了

本程序加了一个LCD1602,,,,你自己选择使用哈

#includereg52.h //包含头文件

#includeintrins.h

#define uchar unsigned char //宏定义

#define uint unsigned int

uchar i , j ,n,z; //定义全局变量

sbit RS=P2^0; //定义端口

sbit RW=P2^1;

sbit E =P2^2;

sbit k=P2^7;

sbit k1=P2^6;

uchar code str0[]={"Sine Wave "}; //定义LCD1602显示字符数组

uchar code str1[]={"Triangle Wave"};

uchar code str2[]={"Square Wave "};

uchar code table[3][40]= //定义显示波形的二维数组

{

0x80,0x94,0xa7,0xb9,0xca,0xd9,0xe7,0xf1,0xf8,0xfd,

0xff,0xfd,0xf8,0xf1,0xe7,0xd9,0xca,0xb9,0xa7,0x94,

0x80,0x6c,0x55,0x46,0x35,0x25,0x18,0x0e,0x06,0x02,

0x00,0x02,0x06,0x0e,0x18,0x25,0x35,0x46,0x55,0x6c,

0x80,0x8c,0x99,0xa6,0xb3,0xc0,0xcc,0xd9,0xe6,0xf2,

0xff,0xf2,0xe6,0xd9,0xcc,0xc0,0xb3,0xa6,0x99,0x8c,

0x80,0x73,0x66,0x5a,0x4d,0x40,0x33,0x26,0x1a,0x0d,

0x00,0x0d,0x1a,0x26,0x33,0x40,0x4d,0x5a,0x66,0x73,

0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,

0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,

0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,

0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00

};

void delay(uint z) //延时程序

{

for(z;z0;z--)

{

}

}

void Write_command(uchar cmd) //LCD1602写入命令程序

{

RS=0; //选择指令寄存器

RW=0; //写操作

E =1; //使能端

P1=cmd;

delay(1);

E =0;

delay(10); //延时 使LCD1602处于不忙状态

}

void Write_data(uchar cmd) //LCD1602写入数据命令

{

RS=1; //选择数据寄存器

RW=0; //写操作

E =1; //时能端

P1=cmd;

delay(1);

E=0;

delay(10); //延时 使LCD1602处于不忙状态

}

void Lcd_init() //LCD1602初始化程序

{

Write_command(0x38); //设置16*2显示 5*7点阵 8位数据接口

Write_command(0x0c); //LCD1602开显示 ,不显示光标

Write_command(0x06); //读或写一字符后指针加一 ,显示不移动

Write_command(0x80+0x00); //数据指针地址设置

}

void Display() //LCD1602显示英文程序

{

Lcd_init();

if (i==0)

{

for (n=0;n13;n++)

{

Write_data(str0[n]);

}

}

else if(i==1)

{

for(n=0;n13;n++)

{

Write_data(str1[n]);

}

}

else

{

for(n=0;n13;n++)

{

Write_data(str2[n]);

}

}

}

void main() //主函数

{

Display();

while(1)

{

for(j=0;j40;j++)

{

P0=table[i][j];

}

if(k==0) //开关程序

{

delay(1);

if(k==0);

{

if(k==0)

{

i++;

if (i==3) i=0;

Display();

}

}

while(k==0);

}

}

}


网页名称:C语言利用数组画正弦函数 用c语言编程求正弦值
文章转载:http://azwzsj.com/article/hipedi.html