C语言设计一个简单的图形动画,用turboc2运行,怎样编写使图形动起来的代码???

C语言设计一个简单的图形动画,用turboc2运行,怎样编写使图形动起来的代码???,第1张

1、首先,打开vc6.0,建立程序编写页面,建立C语言环境,声明两个整数型变量。

2、随后,打出新的前三行,由于规律不明显,就用printf语句手动输入,要仔细观察模版。

3、观察可得,中间三行相同,就可以使用for循环,循环三行,每行的个数要仔细计算,模版很重要。

4、随后的七列逐渐减少,同样使用for循环进行循环七列递减的运算,这样还剩下最后一列。

5、最后一列,只有一个符号,相同于前三行,就是用printf语句直接编写最后一行。

6、这样就完成了程序的编写,这样就可以进行编译了,可以看到编译结果0错误,0警告,就可以运行程序了。

7、运行成功,看到程序运行框中出现了清晰的心图形,成功编程。

这要看你所使用的系统平台,图形化编程与系统平台息息相关

对于C语言来说,有许多成熟的框架。比如Windows上可使用Windows的系统API,Linux下有GTK,嵌入式环境下有miniGUI等。

C语言是一门比较特殊的语言,虽然也是高级编程语言的一种,但是为了和其他语言区分开来,部分人也会将C语言称作中级语言,主要是因为C语言不是面向对象的语言,并且有指针这样的利器可以直接对底层以及硬件进行 *** 作。

正是因为C语言不是面向对象的语言,在图形化这样更偏上层的应用中,一般会使用C++替代C语言,这样能极大的降低开发的工作量。

比如,Windows下可使用MFC,WPF也支持C++。Linux下一般用跨平台的QT(可在Windows/MAC等多种平台运行)。嵌入式环境下有嵌入式的QT版本。

说心里话,我以前也喜欢c的,不过太难了.这是一点东西.你可以实验以下的.c里的函数太多,你可以到新华书店去找书的,很多那方面的书.都很好,不过建议你学其他的语言,

函数名: line

功 能: 在指定两点间画一直线

用 法: void far line(int x0, int y0, int x1, int y1)

程序例:

#include <graphics.h>

#include <stdlib.h>

#include <stdio.h>

#include <conio.h>

int main(void)

{

/* request auto detection */

int gdriver = DETECT, gmode, errorcode

int xmax, ymax

/* initialize graphics and local variables */

initgraph(&gdriver, &gmode, "")

/* read result of initialization */

errorcode = graphresult()

/* an error occurred */

if (errorcode != grOk)

{

printf("Graphics error: %s\n",

grapherrormsg(errorcode))

printf("Press any key to halt:")

getch()

exit(1)

}

setcolor(getmaxcolor())

xmax = getmaxx()

ymax = getmaxy()

/* draw a diagonal line */

line(0, 0, xmax, ymax)

/* clean up */

getch()

closegraph()

return 0

}

函数名: linerel

功 能: 从当前位置点(CP)到与CP有一给定相对距离的点画一直线

用 法: void far linerel(int dx, int dy)

程序例:

#include <graphics.h>

#include <stdlib.h>

#include <stdio.h>

#include <conio.h>

int main(void)

{

/* request auto detection */

int gdriver = DETECT, gmode, errorcode

char msg[80]

/* initialize graphics and local variables */

initgraph(&gdriver, &gmode, "")

/* read result of initialization */

errorcode = graphresult()

if (errorcode != grOk)

{

printf("Graphics error: %s\n",

grapherrormsg(errorcode))

printf("Press any key to halt:")

getch()

exit(1)

}

/* move the C.P. to location (20, 30) */

moveto(20, 30)

/* create and output a

message at (20, 30) */

sprintf(msg, " (%d, %d)", getx(), gety())

outtextxy(20, 30, msg)

/* draw a line to a point a relative

distance away from the current

value of C.P. */

linerel(100, 100)

/* create and output a message at C.P. */

sprintf(msg, " (%d, %d)", getx(), gety())

outtext(msg)

/* clean up */

getch()

closegraph()

return 0

}

函数名: circle

功 能: 在给定半径以(x, y)为圆心画圆

用 法: void far circle(int x, int y, int radius)

程序例:

#include <graphics.h>

#include <stdlib.h>

#include <stdio.h>

#include <conio.h>

int main(void)

{

/* request auto detection */

int gdriver = DETECT, gmode, errorcode

int midx, midy

int radius = 100

/* initialize graphics and local variables */

initgraph(&gdriver, &gmode, "")

/* read result of initialization */

errorcode = graphresult()

if (errorcode != grOk) /* an error occurred */

{

printf("Graphics error: %s\n", grapherrormsg(errorcode))

printf("Press any key to halt:")

getch()

exit(1)/* terminate with an error code */

}

midx = getmaxx() / 2

midy = getmaxy() / 2

setcolor(getmaxcolor())

/* draw the circle */

circle(midx, midy, radius)

/* clean up */

getch()

closegraph()

return 0

}

函数名: cleardevice

功 能: 清除图形屏幕

用 法: void far cleardevice(void)

程序例:

#include <graphics.h>

#include <stdlib.h>

#include <stdio.h>

#include <conio.h>

int main(void)

{

/* request auto detection */

int gdriver = DETECT, gmode, errorcode

int midx, midy

/* initialize graphics and local variables */

initgraph(&gdriver, &gmode, "")

/* read result of initialization */

errorcode = graphresult()

if (errorcode != grOk) /* an error occurred */

{

printf("Graphics error: %s\n", grapherrormsg(errorcode))

printf("Press any key to halt:")

getch()

exit(1)/* terminate with an error code */

}

midx = getmaxx() / 2

midy = getmaxy() / 2

setcolor(getmaxcolor())

/* for centering screen messages */

settextjustify(CENTER_TEXT, CENTER_TEXT)

/* output a message to the screen */

outtextxy(midx, midy, "press any key to clear the screen:")

/* wait for a key */

getch()

/* clear the screen */

cleardevice()

/* output another message */

outtextxy(midx, midy, "press any key to quit:")

/* clean up */

getch()

closegraph()

return 0

}


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

原文地址: http://outofmemory.cn/yw/11138360.html

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

发表评论

登录后才能评论

评论列表(0条)

保存