c语言画心知乎,用c语言画心

发布时间:2023-01-06

本文目录一览:

1、[求“一箭穿心” C语言编程](#求“一箭穿心” C语言编程)
2、用c语言中*号表示出一个爱心,并在爱心中穿插着文字,怎么弄?
3、如何用c语言画心

求“一箭穿心” C语言编程

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

#include <graphics.h>
#include <math.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;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();
}

用c语言中*号表示出一个爱心,并在爱心中穿插着文字,怎么弄?

最简单的就是你用printf来实现
或者你要用函数来画心就很麻烦了
比如:

#include <stdio.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数组的三个字符