C语言中用VC++怎么编图案

C语言中用VC++怎么编图案,第1张

不要说VC++就说VC吧。

0、简单的图案,比如话点、线、多边形或者位图,你可以直接使用CDC这个类。看附录一;

1、画复杂的图案,可以看directx或者OpenGL,可以实现复杂的2D或者3D图案。

附录一、

简单绘图函数 FillRect() 用指定画刷填充给定矩形

FrameRect ()在矩形周围绘制边界

InvertRect() 反转矩形内容

DrawIcon() 绘制图标

DrawDragRect() 拖拽矩形时擦除并重绘它

FillSolidRect ()用实颜色填充矩形

Draw3Drect ()绘制三维矩形

DrawEdge() 绘制矩形边

DrawFrameControl() 绘制帧控件

DrawState ()显示图像并应用可视化效果来表示一个状态

在codeblocks中,可以通过集成EGE库,来实现C语言图形程序的编写,具体方式如下:

一、安装:

1、下载ege安装包;

2、将安装包解压;

3、把压缩包里include目录下所有文件,复制到编译器安装目录下的include目录内,例如D:\MinGW\include\;

4、把lib目录下对应编译器名目录下的文件,复制到编译器安装目录下的lib目录内,例如D:\MinGW\lib\。

二、建立工程:

只要第1步做好以后,其实已经安装好ege了,剩下的只是配置build option

点击file-new-projects,选择Console application:

注意编程语言要选C++(不必担心写代码仍可以是C语言,只是库要求源代码文件要是CPP)

三、配置build option:

建立好工程以后,需要设置好链接选项

1、点击project-build option:

2、切换到linker setting选项卡,添加-lgraphics -lgdi32 -limm32 -lmsimg32 -lole32 -loleaut32 -lwinmm -luuid -mwindows,这些链接选项。

3、点击Add,找到第一步编译器路径下的lib文件夹,添加libgraphicsa,libgdi32a libimm32a libmsimg32a libole32a liboleaut32a libwinmma libuuida这8个文件(可以一次性全部添加,不必一次添加一个),

并在右边的other linker options写上 -mwindows。

添加完以后应该是(前面的路径取决于编译器安装目录):

四、 测试代码:

到此已经设置完毕。

将工程里的maincpp文件的代码换成:

#include "graphicsh" 

int main(){ 

initgraph(640, 480); // 初始化为640480大小的窗口,这里和TC 略有区别 

circle(200, 200, 100); // 画圆,圆心(200, 200),半径100 

getch(); // 等待用户按键,按任意键继续 

closegraph(); // 关闭图形界面 

return 0;

}

构建,并运行,运行结果如下:

C语言中提供了库函数来画圆,函数名为circle

函数的头文件为 #include<graphicsh>

函数功能: circle()使用当前绘图色并以实线画一个完整的圆。

用法:该函数调用方式为void circle(int x,int y,int radius);

说明:参数x,y为圆心坐标,radius为圆半径,用像素个素表示。注意,调用circle()函数画圆时不用当前线型。

#include<stdioh>

#include<stdlibh>

#define N 9

#define XH (N/2-abs(N/2-i)+1)

void main() { int i,j;

  for ( i=0;i<N;i++ ) {

    for ( j=0;j<XH;j++ ) printf("");

    printf("\n");

  }

}

int main()

{

int q,w,e=1,r,c=0,k=1;

char o='',p=' ';

for(r=0;r<5;r++) /循环4行输出/

{

for(q=4;q>0;q--)

printf("%c",p);

for(w=0;w<e;w++)

printf("%c",o);

e++;

printf("\n");

}

for(q=0;q<10;q++) //输出整行

printf("%c",o);

printf("\n");

for(r=0;r<5;r++) //4行输出

{

for(w=0;w<k;w++)

printf("%c",p);

k++;

for(q=4;q>c;q--)

printf("%c",o);

c++;

printf("\n");

}

printf("\n");

return 0;

}

我所用到的变量似乎有些多了,看不懂请追问

#include<stdioh>

#include<graphicsh>

main()

{

int gm,gd=DETECT;

int a,T,X,R=100;

scanf("%d",&a);

T=200,

X=aT;

initgraph(&gd,&gm,"");/双引号内填bgi文件夹在你电脑中的目录,如在c:\tc\bgi,且c文件在c:\tc\programfiles下,则填"\\bgi"/

circle(X,T,R);/R为半径/

getch();

closegraph();

}

#include<stdioh>

void main()

{

int i,j,k;

for(i=1;i<=4;i++) //先打印上边的四行

{

for(j=1;j<=4-i;j++) //控制要打印的空格数量

printf(" ");

for(k=1;k<=2i-1;k++) //控制要打印的星号数

printf("");

printf("\n");

}

for(i=1;i<=3;i++)

{

for(j=1;j<=i;j++) //控制要打印的空格数

printf(" ");

for(k=1;k<=7-2i;k++) //控制要打印的星号数

printf("");

printf("\n");

}

}

扩展资料:

for循环

for循环结构是c语言中最具有特色的循环语句,使用最为灵活方便,它的一般形式为:

for(表达式1;表达式2;表达式3)循环体语句 。(其中;不能省略)

表达式

表达式1为初值表达式,用于在循环开始前为循环变量赋初值。

表达式2是循环控制逻辑表达式,它控制循环执行的条件,决定循环的次数。

表达式3为循环控制变量修改表达式,它使for循环趋向结束。

循环体语句是在循环控制条件成立的情况下被反复执行的语句。

但是在整个for循环过程中,表达式1只计算一次,表达式2和表达式3则可能计算多次,也可能一次也不计算。循环体可能多次执行,也可能一次都不执行。

先执行表达式2,然后执行循环结构,最后表达式3,一直这样循环下去。

for循环语句是c语言种功能最为强大的语句,甚至在一定程度上可以代替其他的循环语句。

do

do循环结构,do 1 while⑵;的执行顺序是1->2->1循环,2为循环条件。

while

while循环结构,while(1) 2; 的执行顺序是1->2->1循环,1为循环条件

以上循环语句,当循环条件表达式为真则继续循环,为假则跳出循环。

参考资料:

C语言-百度百科

以上就是关于C语言中用VC++怎么编图案全部的内容,包括:C语言中用VC++怎么编图案、怎么用codeblocks编写c语言的图形程序、c语言编程一个画图软件(画板)该如何编写求大佬帮助,谢谢。等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/9319985.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-27
下一篇 2023-04-27

发表评论

登录后才能评论

评论列表(0条)

保存