C语言图形模式的设置
通信2006级程序实习任务书
实习一 键盘访问控制
一、实习目的
1、掌握C语言中键盘访问控制;
2、掌握常用控制键的键值
二、相关知识
1、kbhit()函数
包含在头文件conio.h中,检测是否有按键动作。
2、bioskey()函数
包含在头文件bios.h中,返回所按键盘的键值。
#define ESC 0x011b
main()
{
int k;
while(k!=ESC){ /*循环,直到按ESC键退出*/
if(kbhit()){ /*检测是否有按键动作*/
k=bioskey(0); /*返回按键的扫描码,参数为0 清空键盘缓冲区,为1不清空键盘缓冲区*/
printf("%x\n",k);
}
}
}
三、实习内容
1.2.自己编制一个利用键盘控制程序运行的小程序,并调试运行。
3.
实习二 C语言图形模式的设置
一、实习目的
1.掌握Turbo C2.0编译器DOS模式下图形模式的设置;
2.学会利用Turbo C2.0提供的基本图形功能函数画一些简单的图形。
?二、相关知识
1.将屏幕设置为图形模式
在Turbo C2.0集成环境中,使用C语言的图形功能时,首先要将屏幕设置为图形模式,如不做此项工作,则屏幕的初始模式为文本模式,无法显示图形。将屏幕设置成图形模式由函数initgraph来完成,它包含在头文件graphics.h中,因此,在使用时要将该头文件包含进程序。在完成图形功能后用closegraph语句关闭图形模式,使屏幕返回到初始的文本模式。下面的程序给出了绘制图形所需的必要操作,本程序在完成屏幕初始化后,画了一条从左上角到右下角的直线。供参考。
#include //图形库#include //标准库函数#include //标准输入输出#include //控制台输入输出main( )
{
/* request auto detection */
int gdriver = DETECT, gmode, errorcode; /* initialize graphics mode */
initgraph(&gdriver, &gmode, " ");
/* 屏幕图形模式初始化," " 中应指明屏幕图形模式驱动程序所在的位置,如:
"c:\\borlandc\\bgi",如当前目录包含该驱动程序时,可省略为:" ",我们使用的驱动程序为EGAVGA.BGI,该驱动程序支持640×480分辨率 16种颜色,分别用0~15表示 */
/* 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); /* return with error code */
}
line(0, 0, getmaxx(), getmaxy()); /*画一条从左上角到右下角的直线*/
getch(); /* 使程序暂停,按任意键继续*/
closegraph(); /* 关闭图形模式*/
}
2.基本图形功能函数
函数putpixel(int x, int y, int color),表示在点(x,y)处以参数color指定的颜色画点;
函数setcolor(int color)的功能是将颜色设置成color;
函数line(int x1, int y1, int x2, int y2),表示从(x1, y1)到(x2, y2)画一条直线;
函数circle(int x, int y, int R)的功能是以(x, y)为圆心,以R为半径作圆;
函数rectangle(int left, int top, int right, int bottom)是以(left,top)为左上角,以(right,bottom)为右下角的顶点画一个矩形。
函数setfillstyle(int p