📄 026.htm
字号:
<HTML><HEAD><meta http-equiv="Content-Type" content="text/html; charset=GB2312"><TITLE>王大刚-->C语言编程宝典-->G</TITLE>
<META NAME="keywords" CONTENT="王大刚 C语言编程宝典 G">
<META NAME="description" CONTENT="王大刚 - C语言编程宝典 - G">
<style>
<!--
#page {position:absolute; z-index:0; left:0px; top:0px}
.tt3 {font: 9pt/12pt "宋体"}
.tt2 {font: 12pt/15pt "宋体"}
a {text-decoration:none}
a:hover {color: blue;text-decoration:underline}
-->
</style>
</HEAD>
<body text="#000000" aLink=#9900ff link=#006699 vLink=#006699 bgcolor="#FFFFFF" leftmargin="3" topmargin="3" marginheight="3" marginwidth="3">
<TABLE WIDTH="100%" CELLPADDING=10 CELLSPACING=0 BORDER=0>
<TR>
<TD CLASS="tt3" VALIGN="top" width="8%" bgcolor="#e0e0e0"><strong><A HREF="027.htm">后一页</A><BR>
<A HREF="025.htm">前一页</A><BR>
<A HREF="index.html">回目录</A><BR>
<A HREF="../../../../index.htm">回首页</A><BR>
</strong>
</TD>
<TD class="tt2" bgcolor="#F5F8F8" width="84%"><center><B><FONT style="FONT-SIZE: 16.5pt" COLOR="#FF6666" FACE="楷体_GB2312">G</FONT></B></center>
<hr color="#EE9B73" size="1" width="94%">
<P>函数名: gcvt
<BR>功 能: 把浮点数转换成字符串
<BR>用 法: char *gcvt(double value, int ndigit, char *buf);
<BR>程序例:
<BR>
<P>#include <stdlib.h>
<BR>#include <stdio.h>
<BR>
<P>int main(void)
<BR>{
<BR> char str[25];
<BR> double num;
<BR> int sig = 5; /* significant digits */
<BR>
<P> /* a regular number */
<BR> num = 9.876;
<BR> gcvt(num, sig, str);
<BR> printf("string = %s\n", str);
<BR>
<P> /* a negative number */
<BR> num = -123.4567;
<BR> gcvt(num, sig, str);
<BR> printf("string = %s\n", str);
<BR>
<P> /* scientific notation */
<BR> num = 0.678e5;
<BR> gcvt(num, sig, str);
<BR> printf("string = %s\n", str);
<BR>
<P> return(0);
<BR>}
<BR>
<BR>
<BR>
<BR>
<P>函数名: geninterrupt
<BR>功 能: 产生一个软中断
<BR>用 法: void geninterrupt(int intr_num);
<BR>程序例:
<BR>
<P>#include <conio.h>
<BR>#include <dos.h>
<BR>
<P>/* function prototype */
<BR>void writechar(char ch);
<BR>
<P>int main(void)
<BR>{
<BR> clrscr();
<BR> gotoxy(80,25);
<BR> writechar('*');
<BR> getch();
<BR> return 0;
<BR>}
<BR>
<P>/*
<BR> outputs a character at the current cursor
<BR> position using the video BIOS to avoid the
<BR> scrolling of the screen when writing to
<BR> location (80,25).
<BR>*/
<BR>
<P>void writechar(char ch)
<BR>{
<BR> struct text_info ti;
<BR> /* grab current text settings */
<BR> gettextinfo(&ti);
<BR> /* interrupt 0x10 sub-function 9 */
<BR> _AH = 9;
<BR> /* character to be output */
<BR> _AL = ch;
<BR> _BH = 0;
/* video page */
<BR> _BL = ti.attribute; /* video attribute */
<BR> _CX = 1;
/* repetition factor */
<BR> geninterrupt(0x10); /* output the char */
<BR>}
<BR>
<BR>
<BR>
<P>函数名: getarccoords
<BR>功 能: 取得最后一次调用arc的坐标
<BR>用 法: void far getarccoords(struct arccoordstype far *arccoords);
<BR>程序例:
<BR>
<P>#include <graphics.h>
<BR>#include <stdlib.h>
<BR>#include <stdio.h>
<BR>#include <conio.h>
<BR>
<P>int main(void)
<BR>{
<BR>/* request auto detection */
<BR> int gdriver = DETECT, gmode, errorcode;
<BR> struct arccoordstype arcinfo;
<BR> int midx, midy;
<BR> int stangle = 45, endangle = 270;
<BR> char sstr[80], estr[80];
<BR>
<P>/* initialize graphics and local variables */
<BR> initgraph(&gdriver, &gmode, "");
<BR>
<P>/* read result of initialization */
<BR> errorcode = graphresult();
<BR>/* an error occurred */
<BR> if (errorcode != grOk)
<BR> {
<BR> printf("Graphics error: %s\n",
<BR>
grapherrormsg(errorcode));
<BR> printf("Press any key to halt:");
<BR> getch();
<BR>/* terminate with an error code */
<BR> exit(1);
<BR> }
<BR>
<P> midx = getmaxx() / 2;
<BR> midy = getmaxy() / 2;
<BR>
<P>/* draw arc and get coordinates */
<BR> setcolor(getmaxcolor());
<BR> arc(midx, midy, stangle, endangle, 100);
<BR> getarccoords(&arcinfo);
<BR>
<P>/* convert arc information into strings */
<BR> sprintf(sstr, "*- (%d, %d)",
<BR> arcinfo.xstart,
arcinfo.ystart);
<BR> sprintf(estr, "*- (%d, %d)",
<BR> arcinfo.xend,
arcinfo.yend);
<BR>
<P> /* output the arc information */
<BR> outtextxy(arcinfo.xstart,
<BR>
arcinfo.ystart, sstr);
<BR> outtextxy(arcinfo.xend,
<BR>
arcinfo.yend, estr);
<BR>
<P> /* clean up */
<BR> getch();
<BR> closegraph();
<BR> return 0;
<BR>}
<BR>
<BR>
<BR>
<BR>
<P>函数名: getaspectratio
<BR>功 能: 返回当前图形模式的纵横比
<BR>用 法: void far getaspectratio(int far *xasp, int far *yasp);
<BR>程序例:
<BR>
<P>#include <graphics.h>
<BR>#include <stdlib.h>
<BR>#include <stdio.h>
<BR>#include <conio.h>
<BR>
<P>int main(void)
<BR>{
<BR>/* request auto detection */
<BR> int gdriver = DETECT, gmode, errorcode;
<BR> int xasp, yasp, midx, midy;
<BR>
<P>/* initialize graphics and local variables */
<BR> initgraph(&gdriver, &gmode, "");
<BR>
<P>/* read result of initialization */
<BR> errorcode = graphresult();
<BR>/* an error occurred */
<BR> if (errorcode != grOk)
<BR> {
<BR> printf("Graphics error: %s\n",
<BR>
grapherrormsg(errorcode));
<BR> printf("Press any key to halt:");
<BR> getch();
<BR>/* terminate with an error code */
<BR> exit(1);
<BR> }
<BR>
<P> midx = getmaxx() / 2;
<BR> midy = getmaxy() / 2;
<BR> setcolor(getmaxcolor());
<BR>
<P>/* get current aspect ratio settings */
<BR> getaspectratio(&xasp, &yasp);
<BR>
<P>/* draw normal circle */
<BR> circle(midx, midy, 100);
<BR> getch();
<BR>
<P>/* draw wide circle */
<BR> cleardevice();
<BR> setaspectratio(xasp/2, yasp);
<BR> circle(midx, midy, 100);
<BR> getch();
<BR>
<P>/* draw narrow circle */
<BR> cleardevice();
<BR> setaspectratio(xasp, yasp/2);
<BR> circle(midx, midy, 100);
<BR>
<P>/* clean up */
<BR> getch();
<BR> closegraph();
<BR> return 0;
<BR>}
<BR>
<BR>
<BR>
<BR>
<P>函数名: getbkcolor
<BR>功 能: 返回当前背景颜色
<BR>用 法: int far getbkcolor(void);
<BR>程序例:
<BR>
<P>#include <graphics.h>
<BR>#include <stdlib.h>
<BR>#include <string.h>
<BR>#include <stdio.h>
<BR>#include <conio.h>
<BR>
<P>int main(void)
<BR>{
<BR> /* request auto detection */
<BR> int gdriver = DETECT, gmode, errorcode;
<BR> int bkcolor, midx, midy;
<BR> char bkname[35];
<BR>
<P>/* initialize graphics and local variables */
<BR> initgraph(&gdriver, &gmode, "");
<BR>
<P>/* read result of initialization */
<BR> errorcode = graphresult();
<BR>/* an error occurred */
<BR> if (errorcode != grOk)
<BR> {
<BR> printf("Graphics error: %s\n",
<BR>
grapherrormsg(errorcode));
<BR> printf("Press any key to halt:");
<BR> getch();
<BR>/* terminate with an error code */
<BR> exit(1);
<BR> }
<BR>
<P> midx = getmaxx() / 2;
<BR> midy = getmaxy() / 2;
<BR> setcolor(getmaxcolor());
<BR>
<P>/* for centering text on the display */
<BR> settextjustify(CENTER_TEXT, CENTER_TEXT);
<BR>
<P>/* get the current background color */
<BR> bkcolor = getbkcolor();
<BR>
<P>/* convert color value into a string */
<BR> itoa(bkcolor, bkname, 10);
<BR> strcat(bkname,
<BR> " is the current background color.");
<BR>
<P>/* display a message */
<BR> outtextxy(midx, midy, bkname);
<BR>
<P>/* clean up */
<BR> getch();
<BR> closegraph();
<BR> return 0;
<BR>}
<BR>
<BR>
<BR>
<BR>
<P>函数名: getc
<BR>功 能: 从流中取字符
<BR>用 法: int getc(FILE *stream);
<BR>程序例:
<BR>
<P>#include <stdio.h>
<BR>
<P>int main(void)
<BR>{
<BR> char ch;
<BR>
<P> printf("Input a character:");
<BR>/* read a character from the
<BR> standard input stream */
<BR> ch = getc(stdin);
<BR> printf("The character input was: '%c'\n",
<BR> ch);
<BR> return 0;
<BR>}
<BR>
<BR>
<BR>
<BR>
<P>函数名: getcbrk
<BR>功 能: 获取Control_break设置
<BR>用 法: int getcbrk(void);
<BR>程序例:
<BR>
<P>#include <stdio.h>
<BR>#include <dos.h>
<BR>
<P>int main(void)
<BR>{
<BR> if (getcbrk())
<BR> printf("Cntrl-brk flag is on\n");
<BR> else
<BR> printf("Cntrl-brk flag is off\n");
<BR>
<P> return 0;
<BR>}
<BR>
<BR>
<BR>
<P>函数名: getch
<BR>功 能: 从控制台无回显地取一个字符
<BR>用 法: int getch(void);
<BR>程序例:
<BR>
<P>#include <stdio.h>
<BR>#include <conio.h>
<BR>
<P>int main(void)
<BR>{
<BR> char ch;
<BR>
<P> printf("Input a character:");
<BR> ch = getche();
<BR> printf("\nYou input a '%c'\n", ch);
<BR> return 0;
<BR>}
<BR>
<BR>
<BR>
<P>函数名: getchar
<BR>功 能: 从stdin流中读字符
<BR>用 法: int getchar(void);
<BR>程序例:
<BR>
<P>#include <stdio.h>
<BR>
<P>int main(void)
<BR>{
<BR> int c;
<BR>
<P> /* Note that getchar reads from stdin and
<BR> is line buffered; this means it will
<BR> not return until you press ENTER. */
<BR>
<P> while ((c = getchar()) != '\n')
<BR> printf("%c", c);
<BR>
<P> return 0;
<BR>}
<BR>
<BR>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -