C語言中的函數(shù)的作用是可以將一段經(jīng)常需要使用的代碼封裝起來,在需要使用時(shí)可以直接調(diào)用。
10年積累的成都網(wǎng)站設(shè)計(jì)、做網(wǎng)站經(jīng)驗(yàn),可以快速應(yīng)對客戶對網(wǎng)站的新想法和需求。提供各種問題對應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認(rèn)識你,你也不認(rèn)識我。但先做網(wǎng)站后付款的網(wǎng)站建設(shè)流程,更有大廠免費(fèi)網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。
示例:
語言的函數(shù)定義和函數(shù)聲明
#includestdio.h
//使用函數(shù)前,需要在main函數(shù)前對使用的函數(shù)進(jìn)行聲明
int getMax(int, int);
void main() {
int t=getMax(12, 21);
printf("%d\n", t);
getchar();
}
int getMax(int a, int b) {
if (a b) {
return a;
}
else {
return b;
}
}
擴(kuò)展資料
scanf 函數(shù)
函數(shù)原型:int scanf(char *format [,argument,...])
功能:從標(biāo)準(zhǔn)輸入設(shè)備(一般指鍵盤)實(shí)現(xiàn)格式化輸入
返回值:成功返回讀入的數(shù)據(jù)項(xiàng)個(gè)數(shù)
函數(shù)參數(shù):format 格式化字符串
argument 輸入數(shù)據(jù)項(xiàng)的地址列表
常用格式類型參考printf函數(shù)的個(gè)格式類型
用法舉例:
從標(biāo)準(zhǔn)輸入設(shè)備中輸入一個(gè)整數(shù)到整形變量a中,輸入一個(gè)浮點(diǎn)數(shù)到浮點(diǎn)型變量b中
int a=0;
float b=0;
scanf("%d%f",a,b);
上面程序執(zhí)行后,從鍵盤輸入: 19 18.6 ,程序?qū)?19賦值給變量a, 18.6賦值給變量b 。
sqrt(float型變量)
例:float
i=5;printf("%f",sqrt(i));
abs(i)求絕對值,意義不大,還不如自己定義
isprint、isalnum、isxdigit
這些沒什么用處,都可以用基本函數(shù)實(shí)現(xiàn),學(xué)他就是浪費(fèi)時(shí)間
srand()和rand()隨機(jī)函數(shù)
,默認(rèn)種子
0返回0-65536的其中一個(gè)值,randomize();對種子初始化,默認(rèn)參數(shù):時(shí)間,不初始化的結(jié)果是每次隨機(jī)的結(jié)果序列都一樣,因?yàn)檫@個(gè)隨機(jī)數(shù)是用數(shù)學(xué)公式計(jì)算出來的
產(chǎn)生
0-7的隨機(jī)數(shù):rand()%7
,對7求余即可達(dá)到目的
無統(tǒng)一劃分標(biāo)準(zhǔn)。
有人分:
分類函數(shù),所在函數(shù)庫為ctype.h
數(shù)學(xué)函數(shù),所在函數(shù)庫為math.h、stdlib.h、string.h、float.h
目錄函數(shù),所在函數(shù)庫為dir.h、dos.h
進(jìn)程函數(shù),所在函數(shù)庫為stdlib.h、process.h
轉(zhuǎn)換子程序,函數(shù)庫為math.h、stdlib.h、ctype.h、float.h
診斷函數(shù),所在函數(shù)庫為assert.h、math.h
輸入輸出子程序,函數(shù)庫為io.h、conio.h、stat.h、dos.h、stdio.h、signal.h
其它函數(shù)。。。。
其實(shí),劃分不劃分,意義不大。沒有人用到所有函數(shù),也沒有人記得住所有函數(shù)名和參數(shù)。都是用的時(shí)候查幫助文件,或到網(wǎng)上查找。常用的函數(shù)并不多,熟能生巧,不用死記。
C語言輸入輸出函數(shù)有很多,標(biāo)準(zhǔn)I/O函數(shù)中包含了如下幾個(gè)常用的函數(shù):
scanf,printf,getc,putc,getchar,putchar,gets,puts,fgets,fputs,fgetc,fputc,fscanf,fprintf等.
int
getc(FILE
*fp)
getc主要是從文件中讀出一個(gè)字符.常用的判斷文件是否讀取結(jié)束的語句為
(ch
=
getc(fp))
!=
EOF.EOF為文件結(jié)束標(biāo)志,定義在stdio.h中,就像EXIT_SUCCESS,EXIT_FAILURE定義在stdlib.h中一樣,文件也可以被理解為一種流,所以當(dāng)fp為stdin時(shí),getc(stdin)就等同于getchar()了.
int
putc(int
ch,FILE
*fp)
putc主要是把字符ch寫到文件fp中去.如果fp為stdout,則putc就等同于putchar()了.
int
getchar(void)
getchar主要是從標(biāo)準(zhǔn)輸入流讀取一個(gè)字符.默認(rèn)的標(biāo)準(zhǔn)輸入流即stdio.h中定義的stdin.但是從輸入流中讀取字符時(shí)又涉及到緩沖的問題,所以并不是在屏幕中敲上一個(gè)字符程序就會運(yùn)行,一般是通過在屏幕上敲上回車鍵,然后將回車前的字符串放在緩沖區(qū)中,getchar就是在緩沖區(qū)中一個(gè)一個(gè)的讀字符.當(dāng)然也可以在while循環(huán)中指定終止字符,如下面的語句:while
((c
=
getchar())
!=
'#')這是以#來結(jié)束的.
int
putchar(int
ch)
putchar(ch)主要是把字符ch寫到標(biāo)準(zhǔn)流stdout中去.
char
*
gets(char
*str)
gets主要是從標(biāo)準(zhǔn)輸入流讀取字符串并回顯,讀到換行符時(shí)退出,并會將換行符省去.
int
puts(char
*str)
puts主要是把字符串str寫到標(biāo)準(zhǔn)流stdout中去,并會在輸出到最后時(shí)添加一個(gè)換行符.
char
*fgets(char
*str,
int
num,
FILE
*fp)
str是存放讀入的字符數(shù)組指針,num是最大允許的讀入字符數(shù),fp是文件指針.fgets的功能是讀一行字符,該行的字符數(shù)不大于num-1.因?yàn)閒gets函數(shù)會在末尾加上一個(gè)空字符以構(gòu)成一個(gè)字符串.另外fgets在讀取到換行符后不會將其省略.
int
fputs(char
*str,
file
*fp)
fputs將str寫入fp.fputs與puts的不同之處是fputs在打印時(shí)并不添加換行符.
int
fgetc(FILE
*fp)
fgetc從fp的當(dāng)前位置讀取一個(gè)字符.
int
fputc(int
ch,
file
*fp)
fputc是將ch寫入fp當(dāng)前指定位置.
int
fscanf(FILE
*fp,
char
*format,
輸入列表)
fscanf按照指定格式從文件中出讀出數(shù)據(jù),并賦值到參數(shù)列表中.
int
fprintf(FILE
*fp,
char
*format,
輸出列表)
fprintf將格式化數(shù)據(jù)寫入流式文件中.
數(shù)據(jù)塊讀寫函數(shù)
fread
(buffer,size,count,fp);
fwrite(buffer,size,count,fp);
參數(shù)說明:
buffer:是一個(gè)指針。
對fread
來說,它是讀入數(shù)據(jù)的存放地址。
對fwrite來說,是要輸出數(shù)據(jù)的地址(均指起始地址)。
size:
要讀寫的字節(jié)數(shù)。
count:
要進(jìn)行讀寫多少個(gè)size字節(jié)的數(shù)據(jù)項(xiàng)。
fp:
文件型指針。
復(fù)制
#include
"stdio.h"
{char
s1[]="abcde",s2[]="scasasa";
strcpy(s1,s2);
如果s2長度大于s1則會覆蓋掉
如果小于的話只是將s2的\0放在s1中\(zhòng)0的前面罷了,而后面處理字符串的函數(shù)是遇到\0就收手
函數(shù)名:
strncpy
功
能:
串拷貝
用
法:
char
*strncpy(char
*destin,
char
*source,
int
maxlen);
程序例:
#include
#include
int
main(void)
{
char
string[10];
char
*str1
=
"abcdefghi";
strncpy(string,
str1,
3);
string[3]
=
'\0';
printf("%s\n",
string);
return
0;
}
函數(shù)名:
remove
功
能:
刪除一個(gè)文件
用
法:
int
remove(char
*filename);
程序例:
#include
int
main(void)
{
char
file[80];
/*
prompt
for
file
name
to
delete
*/
printf("file
to
delete:
");
gets(file);
/*
delete
the
file
*/
if
(remove(file)
==
0)
printf("removed
%s.\n",file);
else
perror("remove");
return
0;
}
函數(shù)名:
rename
功
能:
重命名文件
用
法:
int
rename(char
*oldname,
char
*newname);
程序例:
#include
int
main(void)
{
char
oldname[80],
newname[80];
/*
prompt
for
file
to
rename
and
new
name
*/
printf("file
to
rename:
");
gets(oldname);
printf("new
name:
");
gets(newname);
/*
rename
the
file
*/
if
(rename(oldname,
newname)
==
0)
printf("renamed
%s
to
%s.\n",
oldname,
newname);
else
perror("rename");
return
0;
}
本函數(shù)為求字符長度的函數(shù)。
int
fun(char
*s)
{char
*t=s;
//t取s的首地址
while(*t++);
//t自己遍歷,到字符末也就是
‘\0’的時(shí)候,也是,s有幾個(gè)字符,就++幾次,到不能加的時(shí)候,停止循環(huán),
return(t-s);
//首先,字符是一個(gè)字節(jié)的大小,所以t-s就是char
*s的長度,又因?yàn)?t到‘\0’的時(shí)候還加一次,所以長度包括‘\0’.
}
文章名稱:c語言中的功能函數(shù),c語言功能函數(shù)是什么意思
標(biāo)題鏈接:http://muchs.cn/article24/hssjje.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站改版、標(biāo)簽優(yōu)化、網(wǎng)站收錄、小程序開發(fā)、企業(yè)網(wǎng)站制作、Google
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)