资源描述:
《C语言图形编程.doc》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、C的图形编程一、屏幕显示模式1、文本模式在文本模式又称字符模式。在此模式下整个屏幕被划分成(25行,80列),共25*80个文本单元,每个单元包括一个字符和一个属性,字符即ASCII码字符,属性规定该字符的颜色和强度。(1,1)2580屏幕区坐标原点在屏幕的左上角。如下图所示:在头文件中定义了文本模式下一些函数常用的有;(1)定义一个文本窗口voidwindow(intleft,inttop,intright,intbottom);如要定义一个窗口左上角在屏幕(20,5)处,大小为30列15行的窗口可写成: window(20
2、,5,50,25);(2) 文本窗口颜色的设置 voidtextbackground(intcolor);//设置背景颜色: voidtextcolor(intcolor);//设置字符颜色: 有关颜色的定义见表1。(3)光标定位 voidgotoxy(intx,inty);(4)清屏voidclrscr(void);(5)其它函数一、窗口内文本的输出函数intcprintf("<格式化字符串>",<变量表>);intcputs(char*string);intputch(intch);cprintf()函数输出一个格式化
3、的字符串或数值到窗口中。它与printf()函数的用法完全一样,区别在于cprintf()函数的输出受窗口限制,而printf()函数的输出为整个屏幕。 cputs()函数输出一个字符串到屏幕上,它与puts()函数用法完全一样, 只是受窗口大小的限制。 putch()函数输出一个字符到窗口内。二、窗口内文本的输入函数 intgetche(void); getche()函数从键盘上获得一个字符,在屏幕上显示的时候,如果字符超过了窗口右边界,则会被自动转移到下一行的开始位置。例1:下面这个程序使用了关于窗口大小的定义、颜色的设置
4、等函数,在一个屏幕上不同位置定义了7个窗口,其背景色分别使用了7种不同的颜色。#include#include//文本模式下的函数voidmain(void){inti;char*c[]={"BLACK","BLUE","GREEN","CYAN","RED","MAGENTA","BROWN","LIGHTGRAY"};textbackground(0);/*设置屏幕背景色*/clrscr();/*清除文本屏幕*/cputs(c[0]);for(i=1;i<8;i++){window(10+i*5,5+i,30+
5、i*5,15+i);/*定义文本窗口*/textbackground(i);/*定义窗口背景色*/clrscr();cputs(c[i]);/*清除窗口*/}getch();}表1.有关颜色的定义━━━━━━━━━━━━━━━━━━━━━━━━━━━ 符号常数 数值 含义 字符或背景─────────────────────────── BLACK 0 黑 两者均可 BLUE 1 兰 两者均可 GREEN
6、 2 绿 两者均可 CYAN 3 青 两者均可 RED 4 红 两者均可 MAGENTA 5 洋红 两者均可 BROWN 6 棕 两者均可 LIGHTGRAY 7 淡灰 两者均可 DARKGRAY 8 深灰 只用于字符 LIG
7、HTBLUE 9 淡兰 只用于字符 LIGHTGREEN 10 淡绿 只用于字符 LIGHTCYAN 11 淡青 只用于字符 LIGHTRED 12 淡红 只用于字符 LIGHTMAGENTA 13 淡洋红 只用于字符 YELLOW 14 黄 只用于字符 WHITE 15 白 只用于字
8、符 BLINK 128 闪烁 只用于字符━━━━━━━━━━━━