一箭穿心程序编码c语言,一个简单的一箭穿心程序

一个简单的一箭穿心程序

其实这个程序也不难,只要用心形线方程(1-ρ×cosθ)来绘图就可以了。

作者:张跃华             学校:云南农业大学

程序如下:

#include

#include

#define FNX(x1) (int)(x+(x1)*sl)

#define FNY(y1) (int)(MAXY-(y+(y1)*sl))

#define R(theta) 1-pow(cos(1*theta),1)

int sl=50,MAXY;

float x1,y1,xs,ys,r,theta;

/*画心*/

void draw(int x,int y)

{

for(theta=0;theta<2*3.14;theta+=0.01)

{r=R(theta);

x1=r*sin(theta);y1=r*cos(theta);

xs=FNX(x1);ys=FNY(y1);

if(theta==0)moveto(xs,ys);else lineto(xs,ys);

}

}

/*画箭头*/

void jian()

{

line(205,235,200,240);

line(200,240,205,245);

line(200,240,214,240);

line(400,240,500,240);

line(485,235,480,240);

line(480,240,485,245);

line(490,235,485,240);

line(485,240,490,245);

line(495,235,490,240);

line(490,240,495,245);

line(500,235,495,240);

line(495,240,500,245);

line(505,235,500,240);

line(500,240,505,245);

line(485,235,505,235);

line(485,245,505,245);

}

/*主程序*/

main()

{int driver=DETECT,mode;

initgraph(&driver,&mode,"");

setbkcolor(1);

setcolor(4);

MAXY=getmaxy();

draw(280,280);/*左心*/

draw(370,280);/*右心*/

jian();

getch();

closegraph();

}

[1]

  • 2
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值