c語(yǔ)言+right函數(shù) c++中right的作用

求教:c語(yǔ)言里可以使用right,left,mid函數(shù)來(lái)提取字符串中的部分字符嗎?

自己寫(xiě)吧,不過(guò)這些工作已經(jīng)有很多人做過(guò)了,網(wǎng)上找一找就行了,找到后,放到自己的系統(tǒng)里調(diào)用、編譯就行了。

十多年專(zhuān)注成都網(wǎng)站制作,成都定制網(wǎng)頁(yè)設(shè)計(jì),個(gè)人網(wǎng)站制作服務(wù),為大家分享網(wǎng)站制作知識(shí)、方案,網(wǎng)站設(shè)計(jì)流程、步驟,成功服務(wù)上千家企業(yè)。為您提供網(wǎng)站建設(shè),網(wǎng)站制作,網(wǎng)頁(yè)設(shè)計(jì)及定制高端網(wǎng)站建設(shè)服務(wù),專(zhuān)注于成都定制網(wǎng)頁(yè)設(shè)計(jì),高端網(wǎng)頁(yè)制作,對(duì)高空作業(yè)車(chē)租賃等多個(gè)領(lǐng)域,擁有多年的網(wǎng)站營(yíng)銷(xiāo)經(jīng)驗(yàn)。

c語(yǔ)言中定義一種函數(shù)使一組數(shù)從高到低排序

給你一個(gè)直接插入排序

#include "stdio.h"

void InsertSort(int a[], int left, int right) {//對(duì)數(shù)組a從下標(biāo)為left到right區(qū)域進(jìn)行直接插入排序

int i, j, tmp;

for(i = left + 1; i = right; i++) {

for(j = i - 1, tmp = a[i]; j = left tmp a[j]; j++)

a[j + 1] = a[j];

a[j + 1] = tmp;

}

}

void main( ) {

int i, n, a[100];

scanf("%d", n);

for(i = 0; i n; i++)

scanf("%d", a[i]);

InsertSort(a, 0, n - 1);

printf("\n");

for(i = 0; i n; i++) printf("%d\t", a[i]);

c語(yǔ)言常用函數(shù)有哪些?主要掌握的要點(diǎn)是什么

函數(shù)1。absread()讀磁盤(pán)絕對(duì)扇區(qū)函數(shù)原形:int absread(int drive,int num,int sectnum,void *buf)功能:從drive指定的驅(qū)動(dòng)器磁盤(pán)上,sectnum指定的邏輯扇區(qū)號(hào)開(kāi)始讀取(通過(guò)DOS中斷0x25讀取)num個(gè)(最多64K個(gè))扇區(qū)的內(nèi)容,儲(chǔ)存于buf所指的緩沖區(qū)中。參數(shù):drive=0對(duì)應(yīng)A盤(pán),drive=1對(duì)應(yīng)B盤(pán)。返回值:0:成功;-1:失敗。頭文件:dos.h函數(shù)2。abswrite()寫(xiě)磁盤(pán)絕對(duì)扇區(qū)函數(shù)原形:int abswrite(int drive,int nsects,int lsect,void *buffer) drive=0(A驅(qū)動(dòng)器)、1(B驅(qū)動(dòng)器)、 nsects=要寫(xiě)的扇區(qū)數(shù)(最多64K個(gè)); lsect=起始邏輯扇區(qū)號(hào); buffer=要寫(xiě)入數(shù)據(jù)的內(nèi)存起始地址。功能:將指定內(nèi)容寫(xiě)入(調(diào)用DOS中斷0x26)磁盤(pán)上的指定扇區(qū),即使寫(xiě)入的地方是磁盤(pán)的邏輯結(jié)構(gòu)、文件、FAT表和目錄結(jié)構(gòu)所在的扇區(qū),也照常進(jìn)行。返回值:0:成功;-1:失敗。頭文件:dos.h函數(shù)3。atof()將字符串轉(zhuǎn)換成浮點(diǎn)數(shù)的函數(shù)原形:double atof(const char *s)功能:把s所指向的字符串轉(zhuǎn)換成double類(lèi)型。 s格式為:符號(hào) 數(shù)字.數(shù)字 E符號(hào) 數(shù)字返回值:字符串的轉(zhuǎn)換值。頭文件:math.h、stdlib.h函數(shù)4。atoi()將字符串轉(zhuǎn)換成整型數(shù)的函數(shù)原形:int atoi(const char *s)功能:把s所指向的字符串轉(zhuǎn)換成int類(lèi)型。 s格式為:符號(hào) 數(shù)字返回值:字符串的轉(zhuǎn)換值。若出錯(cuò)則返回0。頭文件:stdlib.h函數(shù)5。atol()將字符串轉(zhuǎn)換成長(zhǎng)整型數(shù)的函數(shù)原形:long atol(const char *s)功能:把s所指向的字符串轉(zhuǎn)換成long int類(lèi)型。 s格式為:符號(hào) 數(shù)字返回值:字符串的轉(zhuǎn)換值。若出錯(cuò)則返回0。頭文件:stdlib.h函數(shù)6。bcd()把一個(gè)數(shù)轉(zhuǎn)換成對(duì)應(yīng)的BCD碼的函數(shù)原形:bcd bcd(int x) bcd bcd(double x) bcd bcd(double x,int decimals)注意:BCD碼的精度可達(dá)17位。參數(shù)decimals是可選的,用來(lái)指定轉(zhuǎn)換后小數(shù)點(diǎn)后的位數(shù)。頭文件:bcd.h函數(shù)7。bdos()原形∶int bdos(int fnum,unsigned dx,unsigned al) 其中fnum是系統(tǒng)調(diào)用號(hào);dx是傳給寄存器DX的值;al是傳給寄存器AL的值;功能∶DOS系統(tǒng)調(diào)用(INT21H)返回值∶AX中的值函數(shù)8。biosdisk()調(diào)用BIOS磁盤(pán)驅(qū)動(dòng)程序函數(shù)原形:char biosdisk(int cmd,int drive,int head,int track,int sector,int nsects,void *buffer)功能:使用中斷0x13,直接調(diào)用BIOS進(jìn)行磁盤(pán)操作參數(shù):(1)cmd: 2-數(shù)據(jù)以每扇區(qū)512字節(jié)的格式讀入buffer,起始扇區(qū)由head、track和sector定,扇區(qū)數(shù)由nsects定。 3-將buffer中的數(shù)據(jù)按每扇區(qū)512字節(jié)寫(xiě)入磁盤(pán)。 4-對(duì)扇區(qū)進(jìn)行數(shù)據(jù)校驗(yàn)。 6-格式化一個(gè)磁盤(pán)并對(duì)化扇區(qū)設(shè)置化標(biāo)志。 8-返回當(dāng)前驅(qū)動(dòng)器參數(shù)在buffer的前4個(gè)字節(jié)中。 10-長(zhǎng)讀,每扇區(qū)讀入512字節(jié)加上額外的4個(gè)字節(jié)。 11-長(zhǎng)寫(xiě),每扇區(qū)寫(xiě)入512字節(jié)加上額外的4個(gè)字節(jié)。 (2)drive:0-第一個(gè)軟驅(qū);1-第二個(gè)軟驅(qū);0x80-第一個(gè)硬驅(qū) (3)head:磁頭 (4)track:磁道 (5)sector:扇區(qū) (6)nsects:扇區(qū)數(shù) (7)buffer:數(shù)據(jù)緩沖區(qū),定義為unsigned char buffer[];返回值:0x00-操作成功 0x01-錯(cuò)誤命令 0x03-企圖寫(xiě)具有寫(xiě)保護(hù)的磁盤(pán) 0x07-驅(qū)動(dòng)器參數(shù)設(shè)置錯(cuò)誤 0x10-磁盤(pán)讀/CRC/ECC錯(cuò)誤頭文件:bios.h注:對(duì)于硬盤(pán)主引導(dǎo)記錄扇區(qū)head=0,track=0,sector=1函數(shù)9。biosprint()調(diào)用BIOS打印機(jī)I/O接口的函數(shù)原形:int biosprint(int cmd,int abyte,int port)功能:通過(guò)BIOS中斷0x17在由參數(shù)port指定的打印機(jī)上完成各種打印機(jī)功能。 port=0(LPT1) =1(LPT2); cmd=0(打印字符abyte) 1(初始化打印機(jī)端口) 2(讀打印機(jī)狀態(tài)); abyte=0-255;返回值:打印機(jī)狀態(tài) 位0(設(shè)備超時(shí));位3(I/O出錯(cuò));位4(打印機(jī)已選擇);位5(沒(méi)紙);位6(打印機(jī)確認(rèn));位7(不忙)頭文件:bios.h函數(shù)10。calloc()分配內(nèi)存函數(shù)原形:void *calloc(size_t nitems,size_t size)功能:在堆中分配一塊內(nèi)存,將該內(nèi)存的內(nèi)容全部清0。返回值:返回指向新分配內(nèi)存的指針??臻g不夠則返回NULL。頭文件:stdlib.h、calloc.h函數(shù)11。ceil()原形∶double ceil(double num)功能∶求不小于num的最小雙精度整數(shù)頭文件∶math.h函數(shù)12。cgets()讀字符串函數(shù)原形:char *cgets(char *str)功能:從控制臺(tái)讀入一個(gè)字符串,并將該字符串(和字符串長(zhǎng)度)存入有str所指向的地址中。注意:在調(diào)用cgets之前,必須將要讀入的字符串最大長(zhǎng)度存入str[0]中,返回時(shí)str[1]被設(shè)置為實(shí)際讀入的字符數(shù)。實(shí)際字符串內(nèi)容從str[2]開(kāi)始,以空字符(\0)結(jié)尾。返回值:指向str[2]的指針。頭文件:conio.h函數(shù)13。chdir()改變當(dāng)前目錄的函數(shù)原形:int chdir(const char *path)功能:把由path指定的目錄改為當(dāng)前目錄。path參數(shù)中可以指定驅(qū)動(dòng)器號(hào),如"a:\\ddd", 但只是改變?cè)擈?qū)動(dòng)器上的當(dāng)前目錄,對(duì)當(dāng)前活動(dòng)驅(qū)動(dòng)器上的當(dāng)前目錄無(wú)影響。返回值:0(成功);-1(失敗)頭文件:dir.h函數(shù)14。_chmod()改變文件存取權(quán)限的函數(shù)原形:int _chmod(const char *path,int func[,int attrib])功能:讀取(func=0時(shí))或設(shè)置(func=1時(shí))DOS文件屬性。 attrib=FA_RDONLY 只讀 attrib=FA_HIDDEN 隱藏文件 attrib=FA_SYSTEM 系統(tǒng)文件 attrib=FA_LABLE 卷標(biāo) attrib=FA_DIREC 目錄 attrib=FA_ARCH 檔案 返回值:失敗時(shí)返回-1。成功時(shí)返回文件的屬性字節(jié),如果 返回值FA_RDONLY 不等于0,則文件是只讀文件;......頭文件:io.h、dos.h函數(shù)15。chmod()改變文件存取權(quán)限的函數(shù)原形:int chmod(const char *path,int amode)功能:根據(jù)amode的值,設(shè)置由path所指文件的存取權(quán)限。 amode的值 存取權(quán)限 S_IWRITE 允許寫(xiě) S_IREAD 允許讀(只讀) S_IREAD|S_IWRITE 可讀可寫(xiě) 返回值:0(成功);-1(失敗)頭文件:io.h、sys\stat.h函數(shù)16。clock()原形∶long clock(void)功能∶測(cè)得從程序開(kāi)始到調(diào)用處處理機(jī)所用的時(shí)間頭文件∶time.h函數(shù)17。close()關(guān)閉文件函數(shù)原形:int close(int handle)功能:關(guān)閉由文件句柄所指向的文件,句柄是調(diào)用_creat、creat、creatnew、creattemp、dup、dup2、_open或open時(shí)得到的。該函數(shù)并不在文件末尾寫(xiě)一個(gè)Ctrl-Z字符,如果想用該字符結(jié)束文件,必須顯式地給出該字符。返回值:0(成功);-1(失敗)頭文件:io.h函數(shù)18。closegraph()關(guān)閉圖形函數(shù)原形:void far closegraph(void)功能:釋放圖形系統(tǒng)分配的所有內(nèi)存,將屏幕恢復(fù)到調(diào)用initgraph之前的模式。頭文件:graphics.h函數(shù)19。cos()原形∶double cos(double arg)功能∶計(jì)算arg(弧度)的余弦值頭文件∶math.h函數(shù)20。ctrlbrk()設(shè)置ctrl-break處理程序的函數(shù)原形:void ctrlbrk(int(*handle)(void))功能:修改中斷向量0x23,使用新的ctrl-break中斷處理函數(shù)。用法:ctrlbrk(函數(shù)名); 先定義函數(shù):int 函數(shù)名(void){...}頭文件:dos.h函數(shù)21。delay()暫停函數(shù)原形:void delay(unsigned milliseconds)功能:暫停當(dāng)前所執(zhí)行的程序milliseconds毫秒。頭文件:dos.h函數(shù)22。disable()屏蔽中斷的宏原形:void disble(void)功能:屏蔽中斷,只允許從外部設(shè)備來(lái)的不可屏蔽中斷(NMI)。頭文件:dos.h函數(shù)23。enable()開(kāi)硬件中斷的宏原形:void enable(void)功能:開(kāi)放中斷,允許接受任何設(shè)備產(chǎn)生的中斷。頭文件:dos.h函數(shù)24。exec()加載并運(yùn)行其它程序的函數(shù)族e(cuò)xecl(),execle(),execlp(),execlpe(),execv(),execve(),execvp(),execvpe()原形∶ int execl(char *path,char *arg0,*arg1,...,*argn,NULL)int execle(char *path,char *arg0,*arg1,...,*argn,NULL,char **env)int execlp(char *path,char *arg0,*arg1,...,*argn,NULL)int execlpe(char *path,char *arg0,*arg1,...,*argn,NULL,char **env)int execv(char *path,char *argv[])int execve(char *path,char *argv[],char **env)int execvp(char *path,char *argv[])int execvpe(char *path,char *argv[],char **env) 其中,path是調(diào)用的子程序的文件名,在exec后面的后綴具有某種功能: p表示函數(shù)能夠在由DOS環(huán)境變量PATH的目錄中搜索子進(jìn)程文件,如果path中未指明文件所在目錄,函數(shù)將首先在當(dāng)前目錄中找,然后在DOS環(huán)境變量指定的目錄中找。 l表示參數(shù)指針(arg0,...,argn)按單獨(dú)參數(shù)傳送。當(dāng)預(yù)先知道要傳送的參數(shù)個(gè)數(shù)時(shí),通常用帶后綴l的函數(shù)。 v表示參數(shù)指針(arg0,...,argn)按指針數(shù)組傳送。當(dāng)要傳送的參數(shù)可變時(shí),使用帶后綴v的函數(shù)。 e表示參數(shù)env可以傳送到子進(jìn)程,該函數(shù)可用來(lái)修改子進(jìn)程的環(huán)境。若無(wú)e后綴,子進(jìn)程將繼承父進(jìn)程的環(huán)境。注意:arg0+...+argn,或arg[0]+...+arg[n]的總長(zhǎng)度必需小于128字節(jié)。當(dāng)調(diào)用exec函數(shù)時(shí),原先已經(jīng)打開(kāi)的文件在子進(jìn)程中仍然是打開(kāi)的。功能:加載并運(yùn)行其它程序,調(diào)用時(shí)必須有足夠的內(nèi)存空間用于加載和執(zhí)行子程序,子程序?qū)⒏采w父程序。頭文件:process.h 函數(shù)25。farcalloc()從遠(yuǎn)堆中分配內(nèi)存的函數(shù)原形:void far *farcalloc(unsigned long nunits,unsigned long unitsz)功能:從遠(yuǎn)堆中為包含nunits個(gè)元素的數(shù)組分配內(nèi)存,每一區(qū)unitsz字節(jié)長(zhǎng)。用法:fptr=farcalloc(數(shù)目,sizeof(char)); 先定義:char far *fptr;注意:所有可用RAM能被分配;大于64K的塊能被分配;用遠(yuǎn)指針存取該塊。微模式不能用。返回值:返回指向新分配塊的指針,若內(nèi)存不夠,則返回NULL。頭文件:alloc.h函數(shù)26。farfree()從遠(yuǎn)堆中釋放一塊已分配內(nèi)存的函數(shù)原形:void farfree(void far *block)頭文件:alloc.h函數(shù)27。farmalloc()從遠(yuǎn)堆中分配內(nèi)存的函數(shù)原形:void far *farmalloc(unsigned long nbytes)使用方式:fptr=farmalloc(字節(jié)數(shù)); 先定義char far *fptr;功能:從遠(yuǎn)堆中分配長(zhǎng)nbytes字節(jié)的內(nèi)存。注意:所有可用RAM能被分配;大于64K的塊能被分配;用遠(yuǎn)指針存取該塊。微模式不能用。返回值:返回指向新分配內(nèi)存的指針,若內(nèi)存不夠,則返回NULL。頭文件:alloc.h函數(shù)28。farrealloc()調(diào)整遠(yuǎn)堆中已分配塊的函數(shù)原形:void far *farrealloc(void far *oldblock,unsigned long nbytes)返回值:返回調(diào)整后的新內(nèi)存地址。若不能重新分配,則返回NULL。頭文件:alloc.h函數(shù)29。fclose()關(guān)閉一個(gè)流函數(shù)原形:int fclose(FILE *stream)使用方式:fclose(文件指針名);其中文件指針名=fopen();功能:關(guān)閉指定的流,關(guān)閉前清除所有與stream相聯(lián)的緩沖區(qū),釋放系統(tǒng)分配的緩沖區(qū),但由setbuf設(shè)置的緩沖區(qū)不能自動(dòng)釋放。返回值:0(成功);EOF(失敗)頭文件:stdio.h函數(shù)30。fcloseall()關(guān)閉打開(kāi)的流的函數(shù)原形:int fcloseall(void)功能:關(guān)閉所有打開(kāi)的流,由stdin、stdout、stdprn、stderr和stdaux設(shè)置的流除外。返回值:關(guān)閉流的總數(shù)。如果發(fā)現(xiàn)錯(cuò)誤則返回EOF。頭文件:stdio.h 函數(shù)31。feof()檢查文件是否結(jié)束的函數(shù)原形∶int feof(FILE *fp)返回值∶文件結(jié)束返回非0值,否則返回0。頭文件∶stdio.h函數(shù)32。fgets()從流中讀取一字符串的函數(shù)原形:char *fgets(char s[],int n,FILE *stream)使用格式:fgets(字符串指針,字符個(gè)數(shù),文件指針)功能:從輸入流stream中讀入字符存到s串中。當(dāng)讀了n-1個(gè)字符或遇到換行符時(shí),函數(shù)停止讀過(guò)程。fgets在s串尾保留換行字符。讀入的最后一個(gè)字符后面加一個(gè)空字符。返回值:成功時(shí)返回字符串參數(shù)s,出錯(cuò)或遇到文件結(jié)束時(shí),返回NULL。頭文件:stdio.h函數(shù)33。findfirst()函數(shù)和findnext()函數(shù)調(diào)用方式:整形數(shù)=findfirst(文件名,結(jié)構(gòu)變量名,屬性常數(shù)組合(如0x26));其中定義struct ffblk 結(jié)構(gòu)變量名;原形:int findfirst(path,buffer,attr)和int findnext(buffer) char *path;//要檢索的文件名 struct ffblk { char ff_reserved[21]; char ff_attrib;//被檢索的文件屬性 unsigned ff_ftime;//最后修改的時(shí)間 //(0-4位:秒數(shù)/2;5-10位:分?jǐn)?shù);11-15位:小時(shí)數(shù)) unsigned ff_fdate;//最后修改的日期 //(0-4位:日;5-8位:月;9-15位:年減1980) long ff_fsize;//文件大小 char ff_name[13];//組名 }*buffer; int attr;//要檢索的文件屬性功能:檢索由path和attr指定的文件,把結(jié)果返回到buffer。findfirst返回關(guān)于第一個(gè)指定文件的信息,findnext繼續(xù)檢索。返回值:0(檢索成功),-1(沒(méi)有找到指定的文件)屬性常數(shù): FA_NORMAL(0x00) 含意:Normal file, no attributes FA_RDONLY(0x01) 含意:只讀 FA_HIDDEN(0x02) 含意:隱含文件 FA_SYSTEM(0x04) 含意:系統(tǒng)文件 FA_LABEL(0x08) 含意:卷標(biāo) FA_DIREC(0x10) 含意:子目錄 FA_ARCH(0x20) 含意:修改的文件Archive頭文件:dir.h(dos.h)函數(shù)34。floodfill()填充區(qū)域的函數(shù)原形:void far floodfill(int x,int y,int border)功能:在圖形設(shè)備上用顏色border圍起來(lái)的區(qū)域?qū)⒂卯?dāng)前填充顏色填充。(x,y)是待填充區(qū)域的起點(diǎn),若起點(diǎn)在封閉區(qū)域內(nèi),則區(qū)域內(nèi)被填充;若起點(diǎn)在封閉區(qū)域外,則區(qū)域外被填充。頭文件:graphics.h函數(shù)35。floor()原形∶double floor(double num)功能∶求不大于num的最大雙精度整數(shù)頭文件∶math.h函數(shù)36。fnmerge()建立文件路徑函數(shù)原形:void fnmerge(char *path,const char *drive,const char *dir, const char *name,const char *ext)功能:合成drive:\dir\name.ext,放在path頭文件:dir.h函數(shù)37。fnsplit()分解完整的路徑名函數(shù)原形:int fnsplit(char *path,const char *drive,const char *dir,const char *name,const char *ext)功能:把文件名路徑path分成4個(gè)部分存放。 其中drive中有冒號(hào);dir中有開(kāi)始和結(jié)尾的反斜杠;ext包括開(kāi)始圓點(diǎn)返回值:如果有擴(kuò)展名,則 返回值EXTENSION!=0 如果有文件名,則 返回值FILENAME!=0 如果有目錄名,則 返回值DIRECTORY!=0 如果有驅(qū)動(dòng)器號(hào),則返回值DIRVE!=0頭文件:dir.h 函數(shù)38。fopen()打開(kāi)一個(gè)流函數(shù)原形:FILE *fopen(const char *filename,const char *mode)功能:打開(kāi)用filename指定的文件,并使其與一個(gè)流相聯(lián)。使用方式:文件指針名=fopen("文件名","處理方式") ”處理方式”?。? "rt" 打開(kāi)一個(gè)文本文件,只能讀。 "wt" 生成一個(gè)文本文件,只能寫(xiě)。若文件存在則被重寫(xiě)。 "at" 打開(kāi)一個(gè)文本文件,只能在文件尾部添加。 "rb" 打開(kāi)一個(gè)二進(jìn)制文件,只能讀。 "wb" 生成一個(gè)二進(jìn)制文件,只能寫(xiě)。 "ab" 打開(kāi)一個(gè)二進(jìn)制文件,只能在文件尾部添加。 "rt+" 打開(kāi)一個(gè)文本文件,可讀可寫(xiě)。 "wt+" 生成一個(gè)文本文件,可讀可寫(xiě)。 "at+" 打開(kāi)一個(gè)文本文件,可讀可添加。 "rb+" 打開(kāi)一個(gè)二進(jìn)制文件,可讀可寫(xiě)。 "wb+" 生成一個(gè)二進(jìn)制文件,可讀可寫(xiě)。 "ab+" 打開(kāi)一個(gè)二進(jìn)制文件,可讀可添加。返回值:指明流的指針(成功時(shí))或NULL(失敗時(shí))注:需先定義 FILE *文件指針名; "文件名"若用 argv[1]代替,則可使用命令行形式指定文件名函數(shù)39。FP_OFF()獲取遠(yuǎn)地址偏移量的宏原形:unsigned FP_OFF(void far *p)功能:取得和設(shè)置遠(yuǎn)指針*p的偏移量返回值:偏移量頭文件:dos.h 函數(shù)40。fprintf()傳送輸出到一個(gè)流中的函數(shù)原形:int fprintf(FILE *stream,const char *format[,argument,...])功能:①向文件指針指向的文件輸出ASCⅡ代碼 ②向顯示器輸出錯(cuò)誤信息 使用形式: ①fprintf(文件指針,"輸出格式",輸出項(xiàng)系列); ②fprintf(stderr,"錯(cuò)誤信息");使用實(shí)例:fprintf(stream,"%d %c %f",i,c,f); 其中定義FILE *stream; int i; char c; float f;返回值:成功則返回輸出的字節(jié)數(shù),錯(cuò)誤則返回EOF。頭文件:stdio.h函數(shù)41。FP_SEG()獲取遠(yuǎn)地址段值的宏原形:unsigned FP_SEG(void far *p)功能:取得和設(shè)置遠(yuǎn)指針*p段地址值返回值:段地址值頭文件:dos.hfree()釋放已分配內(nèi)存的函數(shù)原形:void free(void *block)功能:釋放由calloc、malloc、realloc函數(shù)調(diào)用所分配的內(nèi)存。頭文件:stdlib.h、alloc.h函數(shù)42。fscanf()格式化輸入函數(shù)原形:int fscanf(FILE *stream,const char *format[,address,...])功能:從一個(gè)流中掃描輸入字段,一次掃描一個(gè)字符,每個(gè)輸入字段根據(jù)format所指格式指示符格式化后,把輸入字段存在format后面由地址參數(shù)給出的位置上。使用格式:fscanf(文件指針,"輸入格式",輸入項(xiàng)系列);使用實(shí)例:fscanf(fp,"%d",b); 從fp指向的文件中讀取十進(jìn)制整數(shù) (ASCⅡ形式)賦予變量b注:當(dāng)文件指針是stdin時(shí),與scanf功能完全相同頭文件:stdio.h函數(shù)43。fseek()移動(dòng)文件指針函數(shù)原形:int fseek(FILE *stream,long offset,int whence)作用:強(qiáng)制一個(gè)文件的位置指針指向某個(gè)特定的位置(甚至超出文件的尾部)。使用格式:fseek(*文件指針,偏移(長(zhǎng)整型),起點(diǎn)) 定義 FILE *文件指針名; "起點(diǎn)"取值: 0或SEEK_SET(表示文件開(kāi)頭) 1或SEEK_CUR(表示當(dāng)前位置) 2或SEEK_END(表示文件尾端)返回值:0表示成功,非0值表示失敗頭文件:stdio.h函數(shù)44。fwrite()把參數(shù)寫(xiě)入流中的函數(shù)原形:size_t fwrite(const void *ptr,size_t size,size_t n,FILE *stream)功能:附加n個(gè)數(shù)據(jù)項(xiàng)(每個(gè)數(shù)據(jù)項(xiàng)長(zhǎng)度為size個(gè)字節(jié))到指定的輸出文件后,數(shù)據(jù)從ptr處開(kāi)始添加。ptr是指向任意對(duì)象的指針。返回值:調(diào)用成功時(shí)返回實(shí)際寫(xiě)的數(shù)據(jù)項(xiàng)數(shù),出錯(cuò)時(shí)返回一短整形數(shù)值。頭文件:stdio.h例:fwrite(s,sizeof(s),1,stream); 其中s是一結(jié)構(gòu)變量,stream=fopen();函數(shù)45。gcvt()把雙精度數(shù)轉(zhuǎn)化成字符串的函數(shù)原形∶char*gcvt(value,ndigit,buf) 其中∶double value是待轉(zhuǎn)化數(shù) int ndigit是轉(zhuǎn)化長(zhǎng)度 char *buf保存轉(zhuǎn)化后的地址頭文件∶stdlib.h函數(shù)46。geninterrupt()執(zhí)行中斷函數(shù)原形:void geninterrupt(int n)調(diào)用方式:geninterrupt(軟中斷號(hào))功能:產(chǎn)生一個(gè)8086軟中斷注:需先向寄存器傳遞入口信息(用偽變量) 例如 偽變量=要賦的值(入口信息); 調(diào)用geninterrupt()函數(shù)后得接受出口信息 例如 變量名=偽變量偽變量∶Turbo C 允許使用偽變量直接訪(fǎng)問(wèn)相應(yīng)的8086寄存器。偽變量的類(lèi)型有兩種。 ① unsigned int : _AX、 _BX、 _CX、 _DX、 _CS、 _DS、 _SS、 _ES、_SP、 _BP、 _DI、 _SI ② unsigned char: _AL、 _AH、 _BL、 _BH、 _CL、 _CH、 _DL、 _DH函數(shù)47。getc()從流中取字符的宏原形:int getc(FILE *stream)功能:返回輸入流stream中一個(gè)字符,移動(dòng)文件指針使之指向下一個(gè)字符。使用格式:字符變量=getc(文件指針) (正常情況下讀取到代碼值,讀到文件尾或出錯(cuò)時(shí)返回EOF)注:需定義 char 字符變量;FILE *文件指針;頭文件:stdio.h函數(shù)48。getch()從鍵盤(pán)無(wú)回顯地讀取一字符的函數(shù)功能:將鍵盤(pán)上輸入的單個(gè)字符的值(ASCⅡ 碼)立刻賦給字符型變量調(diào)用方式:字符形變量=getch()注:需先定義 char 字符形變量;頭文件:conio.h函數(shù)49。getchar()從stdin流中讀取一個(gè)字符的函數(shù)功能:將鍵盤(pán)上輸入的單個(gè)字符的值(ASCⅡ 碼)回車(chē)后賦給字符型變量調(diào)用方式:字符型變量=getchar()注:需先定義 char 字符型變量;頭文件:stdio.h函數(shù)50。getcurdir()讀取指定驅(qū)動(dòng)器的當(dāng)前目錄的函數(shù)原形:int getcurdir(int drive,char directory) drive=0(缺省);1(A驅(qū)動(dòng)器);... directory用來(lái)存放目錄名,不包括驅(qū)動(dòng)器名,不以反斜杠開(kāi)始。返回值:0(調(diào)用成功);1(出錯(cuò))頭文件:dir.h函數(shù)61。getcwd()讀取當(dāng)前目錄的函數(shù)原形:char *getcwd(char *buf,int buflen)功能:讀取當(dāng)前目錄的完整路徑名(包括驅(qū)動(dòng)器名),最長(zhǎng)為buflen個(gè)字節(jié),存放在buf中。如果buf為NULL,函數(shù)將分配一個(gè)buflen字節(jié)長(zhǎng)的緩沖區(qū),以后可將本函數(shù)的返回值作為free函數(shù)的參數(shù)來(lái)釋放該緩沖區(qū)。返回值:若buf非空,調(diào)用成功返回buf,出錯(cuò)返回NULL;若buf為NULL,返回指向已經(jīng)分配的內(nèi)存緩沖區(qū)地址。頭文件:dir.h函數(shù)62。getdate()讀取系統(tǒng)日期函數(shù)原形:void getdate(pdate) struct date { int da_year; int da_day; int da_mon; }; struct date *pdate;頭文件:dos.h函數(shù)63。getdfree()讀取磁盤(pán)空閑空間的函數(shù)原形:void getdfree(drive,dtable) unsigned char drive;驅(qū)動(dòng)器號(hào)(0-當(dāng)前;1-A;2-B;...) struct dfree { unsigned df_avail;//可使用的簇?cái)?shù) unsigned df_total;//每個(gè)驅(qū)動(dòng)器的簇?cái)?shù) unsigned df_bsec;//每個(gè)扇區(qū)的字節(jié)數(shù) unsigned df_sclus;//每個(gè)簇的扇區(qū)數(shù)(出錯(cuò)時(shí)返回0xffff) }*dtable;功能:把由drive指定的關(guān)于驅(qū)動(dòng)器的信息返回到dtable函數(shù)64。getdisk()讀取當(dāng)前磁盤(pán)驅(qū)動(dòng)器號(hào)函數(shù)原形:int getdisk(void)功能:取得當(dāng)前驅(qū)動(dòng)器號(hào)(0=A;1=B;....)頭文件:dir.h函數(shù)65。getenv()讀取環(huán)境變量的當(dāng)前值的函數(shù)原形:char *getenv(const char *name)用法:s=getenv("環(huán)境變量名"); 需先定義char *s;功能:返回一給定的環(huán)境變量值,環(huán)境變量名可大寫(xiě)或小寫(xiě)。如果指定的變量在環(huán)境中未定義,則返回一空串。 頭文件:stdlib.h函數(shù)66。getimage()將指定區(qū)域的位圖象存入內(nèi)存的函數(shù)原形:void far getimage(int left,int top,int right,int bottom,void far *bitmap)功能:將圖像(矩形區(qū)域)從屏幕拷貝到內(nèi)存,*bitmap指向內(nèi)存中存放圖像的區(qū)域。該區(qū)域的前兩個(gè)字節(jié)用于存放矩形的高和寬。頭文件:graphics.h函數(shù)67。getmaxx()返回屏幕上最大的X坐標(biāo)值的函數(shù)原形:int far getmaxx(void)功能:返回當(dāng)前圖形驅(qū)動(dòng)程序和圖形模式下最大的X坐標(biāo)值。頭文件:graphics.h函數(shù)68。getmaxy()返回屏幕上最大的Y坐標(biāo)值的函數(shù)原形:int far getmaxy(void)功能:返回當(dāng)前圖形驅(qū)動(dòng)程序和圖形模式下最大的Y坐標(biāo)值。頭文件:graphics.h函數(shù)69。getpixel()讀取像素顏色的函數(shù)原形:unsigned far getpixel(int x,int y)頭文件:graphics.h函數(shù)70。getpsp()原形∶unsigned getpsp(void)功能∶使用DOS系統(tǒng)調(diào)用0x62,返回程序段前綴(PSP)的段地址頭文件∶dos.h函數(shù)71。gets()從標(biāo)準(zhǔn)輸入流stdio中讀取一字符串的函數(shù)功能:將鍵盤(pán)上輸入的字符串立刻賦予字符串變量并顯示出來(lái)調(diào)用方式:gets(字符串變量名)注:需定義 char *字符串變量名;函數(shù)72。gettime()讀取系統(tǒng)時(shí)間的函數(shù)原形:void gettime(ptime) struct time { unsigned char ti_min; unsigned char ti_hour; unsigned char ti_hund;//百分之一秒 unsigned char ti_sec; }; struct time *ptime;函數(shù)73。getvect()讀取中斷向量函數(shù)原形:void interrupt(*getvect(int interruptno))功能:讀入由interruptno(0-255之間)所指定的中斷向量值,并把該中斷向量值作為中斷函數(shù)的遠(yuǎn)指針?lè)祷?。返回值:指定中斷向量的?dāng)前4字節(jié)值。頭文件:dos.h使用實(shí)例:oldfunc=getvect(5); 先定義void interrupt(*oldfunc)(); 用后恢復(fù)setvect(5,oldfunc);函數(shù)74。getx()返回當(dāng)前圖形方式下位置的X坐標(biāo)值的函數(shù)原形:int far getx(void);頭文件:graphics.h函數(shù)75。gety()返回當(dāng)前圖形方式下位置的Y坐標(biāo)值的函數(shù)原形:int far gety(void);頭文件:graphics.h函數(shù)76。imagesize()返回保存圖像緩沖區(qū)大小的函數(shù)原形:unsigned far imagesize(int left,int top,int right,int bottom)功能:確定保存圖像所需的存儲(chǔ)區(qū)大小。返回值:返回存儲(chǔ)區(qū)的大小(字節(jié)),若所需內(nèi)存大于等于64K-1字節(jié),則返回0xffff(-1)。頭文件:graphics.h函數(shù)77。initgraph()顯示模式控制函數(shù)(初始化圖形系統(tǒng)函數(shù))功能:把圖形適配器設(shè)置為一種圖形模式,將選擇的圖形驅(qū)動(dòng)程序(在BGI文件中)裝入到內(nèi)存。調(diào)用方式: void far initgraph(int far *driver,int far *mode,char far*path) 其中: *driver可以是數(shù)值(0-10),也可是符號(hào)值(DETECT、CGA、MCGA、EGA、EGA64、EGAMONO、RESERVED、HERCMONO、ATT400、VGA、 PC3270)。 *mode參數(shù)從圖形系統(tǒng)為各種常用的圖形適配器設(shè)置的圖形模式中(CGAC0、...、IBM8514HI--見(jiàn)頭文件graphics.h)選取。常用的有:VGAMED或1

C語(yǔ)言控制上下左右的函數(shù)是什么?

希望這個(gè)能對(duì)你有幫助:#include

#include

int

main(void){

int

c

;

while(1){

c

=

getch();

if(c==0)

c=getch();

//

getch在遇到方向鍵時(shí)會(huì)返回0

再使用getch便會(huì)返回掃描碼

if(

c

==

72

)

printf("UP\n");

//

我?guī)湍惆焉舷伦笥覕?shù)據(jù)調(diào)出來(lái)

你用的時(shí)候define成

UP來(lái)使用這個(gè)值就可以了

if

(

c

==

80)

printf("DOWN\n");

if

(

c

==

75)

printf("LEFT\n");

if

(

c

==

77)

printf("RIGHT\n");

if(c

==

113)

//按q退出

break;

}

return

0;

}

c語(yǔ)言問(wèn)題,四則運(yùn)算,為什么運(yùn)行說(shuō)我answer未初始化使用?而且運(yùn)行錯(cuò)誤,始終是right,求修改

改完收工,修改的地方一共三處:

1,將函數(shù)int Compute(int a,int b,int op) 改為 int Compute(int a,int b,int op,int answer);并且把本函數(shù)的函數(shù)體中的局部變量answer刪掉。

2,將主函數(shù)中調(diào)用Compute函數(shù)的地方修改為:

flag=Compute(a,b,op) -- flag=Compute(a,b,op,answer);

3,最愚蠢的地方,將你的Print函數(shù)里判定flag=1的錯(cuò)誤改為flag==1,如下:

if(flag=1) -- if (flag == 1)

{

printf("Right!\n");

correcttimes++;

}

以上三處修改完成后,你的代碼就好使了。

c語(yǔ)言字符數(shù)組問(wèn)題 char ss[6][20]; ss[1]="right?"為何錯(cuò)的? 但是 char ss[6][20]; scanf("%s",ss[1]);

ss[1]="right"不對(duì)

要區(qū)別字符數(shù)組和字符串指針的區(qū)別

字符數(shù)組只可以在聲明時(shí)用字符串常量直接賦值,如:

char str[20] = "right?"; //正確

而在其他地方不能直接使用字符串常量賦值,如

char str[20];

str = "right?"; //錯(cuò)誤

但是可以給每個(gè)字符單獨(dú)賦值,如:

str[0] = 'r';

str[1] = 'i';

str[2] = 'g'; //正確

...

但是可以看出來(lái)這種方法十分麻煩,合適的方法是使用編寫(xiě)函數(shù)使用循環(huán)語(yǔ)句賦值或者使用庫(kù)函數(shù):

strcpy(str,"right?"); //正確

或者

sprintf(str,"right"); //正確,但是該函數(shù)用在這里大材小用

字符串指針可以直接使用字符串常量賦值,如:

char *pstr = "right?"; //正確

pstr = “wrong"; //正確

關(guān)于字符串指針能否給每個(gè)字符單獨(dú)賦值或使用庫(kù)函數(shù)賦值,則取決于該指針是否指向合法有效的內(nèi)存地址,討論起來(lái)比較麻煩,可以自行參考一些數(shù)據(jù)或者博客。

本文題目:c語(yǔ)言+right函數(shù) c++中right的作用
網(wǎng)站網(wǎng)址:http://muchs.cn/article14/hjspge.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供響應(yīng)式網(wǎng)站關(guān)鍵詞優(yōu)化、商城網(wǎng)站面包屑導(dǎo)航、品牌網(wǎng)站設(shè)計(jì)微信小程序

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都定制網(wǎng)站網(wǎng)頁(yè)設(shè)計(jì)