演算法競賽入門陌生函式總結

2021-10-02 22:45:26 字數 1700 閱讀 8568

新的函式:

1、sprintf()

函式功能:把格式化的資料寫入到某個字串緩衝區。

標頭檔案:stdio.h

格式:sprintf(buf,「格式控制符」,資料變數名);

//buf為足夠大字串陣列。

返回值:字串長度,(不包括『\0』)若失敗,則返回乙個負數。

sprintf

(buf,

"%d%d%d%d%d"

,abc,de,x,y,z)

;

注意:要保證緩衝區的字串陣列足夠大,大小至少為字元個數加1。

2、strchr()

函式功能:查詢字串s中首次出現字元c的位置。

標頭檔案:string.h

格式:strchr();

返回值:返回乙個指向該字串第一次出現的字元的指標,如果不存在則返回空指標。

strchr

(string,ch)

;//string為字串,ch為要尋找的字元

3、fgetc()

函式功能:從檔案指標stream指向的檔案中讀取乙個字元。

標頭檔案:stdio.h

語法:fgetc(file* stream);

返回值:操作成功返回0,否則為非0值。

char x;

x=fgetc

(fin)

;//fin為檔名

4、fgets()

函式功能:從檔案中讀取完整的一行。一旦讀取到』\n』,讀取工作就會停止。每次最多讀取maxn-1個字元,如果maxn不可以讀取完,下次會繼續讀取這一行,直到讀取到』\n』。

標頭檔案:stdio.h

語法:fgets(buf,maxn,fin);//如果鍵盤輸入則將fin 改為stdin

返回值:如果成功,返回相同的str引數;如果未到達檔案末尾或沒有讀取到任何字元,則返回乙個空指標。發生錯誤也返回乙個空指標。

fgets

(buf,maxn,fin)

;//讀取完整的一行放在字元陣列buf中。

5、getchar()

函式功能:從標準輸入讀取下乙個字元,相當於fgetc(stdin)。

標頭檔案:stdio.h

返回值:使用者輸入的ascii碼或eof(檔案結束標誌).

語法:c = getchar();

while

((c =

getchar()

)!=eof)

//輸入直到檔案結尾

後面三個函式為ctype.**件中的函式

1、isdigit(int c)

函式功能:判斷引數是否為十進位制數字字元。

返回值:若引數c為阿拉伯數字0~9,則返回非0值(true),否則返回0(false)。

int

main()

return0;

}

2、isalpha(char ch)

函式功能:判斷字元ch 是否英文本元,a-z或者a-z。

用法同上。

3、isprint(char ch)

函式功能:判斷字元ch 是否是可列印字元。

返回值:是可列印字元時為非0值(true),否則為0值(false).

演算法競賽入門 洪水

題目意思大概就是,有n m個底面積為10 10的格仔,每個格仔內有各種不同高度的柱子,再有乙個降雨量,來填這些格仔,輸出水面高度,和被淹沒於沒被淹沒的比例。include include include include using namespace std intmain 輸入n m個數,可以看成...

演算法競賽入門 鐵軌

某城市有乙個火車站,鐵軌鋪設如圖所示。有n節車廂從a方向駛入車站,按進站順序編號為1 n。你的任務是讓它們按照某種特定的順序進入b方向的鐵軌並駛出車站。為了重組車廂,你可以借助中轉站c。這是乙個可以停放任意多節車廂的車站,但由於末端封頂,駛入c的車廂必須按照相反的順序駛出c。對於每個車廂,一旦從a移...

演算法競賽入門 謎題

有乙個5 5的網格,其中恰好有乙個格仔是空的,其他格仔各有乙個字母。一共有4種指令 a,b,l,r,分別表示把空格上 下 左 右的相鄰字母移到空格中。輸入初始網格和指令序列 以數字0結束 輸出指令執行完畢後的網格。如果有非法指令,應輸出 this puzzle has no final config...