本文目錄一覽:
求“一箭穿心” C語言編程
其實這個程序也不難,只要用心形線方程(1-ρ×cosθ)來繪圖就可以了。程序如下:
#includegraphics.h
#includemath.h
#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;theta2*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();
}
用c語言中*號表示出一個愛心,並在愛心中穿插着文字,怎麼弄?
最簡單的就是你用printf來實現
或者你要用函數來畫心就很麻煩了
比如
#includestdio.h
void main()
{
printf(“* *”);
printf(“* *”);
printf(“* *”);
printf(“* *”);
printf(“* *”);
printf(“* *”);
}
就這種樣子,自己布局吧,如果想用畫圖函數,要麼在tc環境下,要麼在vc下獲取控制台句柄,調用api,然後寫一個畫心形的函數
如何用c語言畫心
用C語言畫心:
關於%*.*s
小數點.後“*”表示輸出位數,具體的數據來自參數表
printf格式字符串中,與寬度控制和精度控制有關的常量都可以換成變量,方法就是使用一個“*”代替那個常量,然後在後面提供變量給“*”。
同樣,小數點.前也可以添加*,也要用戶輸入一個位寬值來代替,表示輸出的字符所佔位寬。
也就是說,前面定義輸出總寬度,後面定義輸出字符個數。
printf(“%*.*s\n”, 50, 3, a); // 50表示此次輸出佔位寬,
//3表示輸出a數組的三個字符
原創文章,作者:PMON,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/145431.html