//class是写成类吗,这个写成类有点多此一举,下面用最简单的函数写的,变量自己改成英文命名
①h
#include?stdio.h
#include?math.h
//宏定义值
#define?h?XX
#define?L?XX
#define?a?XX
①cpp
#include?"1.h"
{
//公式太长自己写
}
void?main()
代码如下:
①.、用gotoxy和gets吧.例如:
gotoxy(old_x,old_y);//跳转到指定坐标输出信息
cprintf("User Name:");//在指定坐标处输出User Name:
gets(name);//输入用户名,name为所定义的字符数组
用法:#include system.h
功能:将光标移动到指定位置说明:gotoxy(x,y)将光标移动到指定行y和列x.设置光标到文本屏幕的指定位置,其中参数x,y为文本屏幕的坐标.
gotoxy(0,0)将光标移动到屏幕左上角.
#include "Conio.h"
#include "graphics.h"
#define closegr closegraph
void initgr(void) /* BGI初始化 */
int gd = DETECT, gm = 0; /* 和gd = VGA,gm = VGAHI是同样效果 */
registerbgidriver(EGAVGA_driver);/* 注册BGI驱动后可以不需要.BGI文件的支持运行 */
initgraph(gd, gm, "");
void DrawCoord();
void Drawstg();
void Drawcurve();
int main(void)
initgr(); /* BGI初始化 */
DrawCoord();
Drawstg();
Drawcurve();
getch(); /* 暂停一下,看看前面绘图代码的运行结果 */
closegr(); /* 恢复TEXT屏幕模式 */
return 0;
void DrawCoord() /*画坐标系*/
void Drawstg() /*画标尺*/
int x,y,i;
void Drawcurve()/*画图示例*/
有关图形窗口和图形屏幕操作函数
第一段:图形窗口操作
以外可以接触.
void far clearviewport(void); 清除现行图形窗口的内容.
void far getviewsettings(struct viewporttypefar * viewport); 获得关于现行窗口的信息,并将其存于viewporttype定义的结构
变量viewport中,其中viewporttype的结构说明如下:
struct viewporttype
int left, top, right, bottom;
int cliplag;
};
注明:
① 窗口颜色的设置与前面讲过的屏幕颜色设置相同,但屏幕背景色和窗口背景色只能是一种颜色,如果窗口背景色改变,整个屏幕的背景色也将改变这与文本窗口不同.
第二段:屏幕操作
除了清屏函数以外,关于屏幕操作还有以下函数:
void far setactivepage(int pagenum); void far setvisualpage(int pagenum);这两个函数只用于EGA,VGA 以及HERCULES图形适配器. setctivepage()函数是为图形输出选择激活页.所谓激活页是指后续图形的输出被写到函数选定的 pagenum页面,该页面并不一定可见.
setvisualpage()函数才使pagenum所指定的页面变成可见页.页面从0开始(Turbo C默认页).如果先用setactivepage() 函数在不同页面
上画出一幅幅图像,再用setvisualpage() 函数交替显示,就可以实现一些动画的效果.
这三个函数用于将屏幕上的图像复制到内存,然后再将内存中的图像送回到屏幕上.首先通过函数imagesize() 测试要保存左上角为
getimage()函数就可将该区域内的图像保存在内存中,需要时可用putimage()函数将该图像输出到左上角为点(x, y)的位置上,其中
getimage()函数中的参数op规定如何释放内存中图像. 关于这个参数的定义参见下表:
putimage()函数中的op值
━━━━━━━━━━━━━━━━━━━━━━━━━━
符号常数 数值 含 义
——————————————————————————
COPY_PUT 0 复制
XOR_PUT 1 与屏幕图像异或的复制
本节介绍的函数在图像动画处理、菜单设计技巧中非常有用.
下面程序模拟两个小球动态碰撞过程.#include
#include
int main()
int i, gdriver, gmode, size;
void *buf;
gdriver=DETECT;
initgraph(gdriver, gmode, "c:\\caic\\bgi");
setbkcolor(BLUE);
cleardevice();
setcolor(LIGHTRED);
setlinestyle(0,0,1);
setfillstyle(1, 10);
buf=malloc(size);
if(!buf) return -1;
getch();
closegraph();
图形模式下的文本输出
第一段:文本输出函数 void far outtext(char far *textstring); 该函数输出字符串指针textstring所指的文本在现行位置.
void far outtextxy(int x, int y, char far *textstring);该函数输出字符串指针textstring所指的文本在规定的(x, y)位置.其中x和y为象元坐标.
说明:
这两个函数都是输出字符串,但经常会遇到输出数值或其它类型的数据,此时就必须使用格式化输出函数sprintf().sprintf()函数的调用格式为: int sprintf(char *str, char *format, variable-list); 它与printf()函数不同之处是将按格式化规定的内容写入str 指向的字符串中,返回值等于写入的字符个数.
例如:
'C110F1sprintf(s, "your TOEFL score is %d", mark);这里s应是字符串指针或数组,mark为整型变量.
第二段:有关文本字体、字型和输出方式的设置
有关图形方式下的文本输出函数,可以通过setcolor()函数设置输出文本的颜色.另外,也可以改变文本字体大小以及选择是水平方向输出还是垂直方向输出.
void far settexjustify(int horiz, int vert); 该函数用于定位输出字符串.
settextjustify()函数的第一个参数horiz 指出水平方向三个位置中的一个,第二个参数vert指出垂直方向三个位置中的一个,二者就确定了其中一个位置.当规定了这个位置后,用outtextxy () 函数输出字符串时,字符串长方形的这个规定位置就对准函数中的(x,y)位置.而对用outtext()函数输出字符串时,这个规定的位置就位于现行游标的位置.有关参数 horiz和vert的取值参见下表:
参数horiz和vert的取值
━━━━━━━━━━━━━━━━━━━━━━━━
符号常数 数值 用于
————————————————————————
LEFT_TEXT 0 水平
BOTTOM_TEXT 0 垂直
CENTER_TEXT 1 水平或垂直
void far settextstyle(int font, int direction,int charsize);
该函数用来设置输出字符的字形(由font确定)、输出方向(由direction确定)和字符大小(由charsize确定)等特性.
font的取值
符号常数 数值 含义
TRIPLEX_FONT 1 三倍笔划字体
direction的取值
HORIZ_DIR 0 从左到右
VERT_DIR 1 从底到顶
charsize的取值
符号常数或数值 含义
USER_CHAR_SIZE=0 用户定义的字符大小
有关图形屏幕下文本输出和字体字型设置函数的用法请看下例:#include
int i, gdriver, gmode;
/*定义一个图形窗口*/
setcolor(YELLOW);
sprintf(s, "Your score is %d", i);
/*将数字转化为字符串*/
/*指定位置输出字符串*/
setcolor(1);
第三段:用户对文本字符大小的设置
int gdriver, gmode;
setcolor(WHITE); /*设置白色作图*/
以上就是土嘎嘎小编为大家整理的C语言中对坐标轴标注函数相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!