在c語(yǔ)言中下面關(guān)于函數(shù) 在C語(yǔ)言函數(shù)中,哪個(gè)函數(shù)是必須的?

你們能不能給我通俗地解釋一下在C語(yǔ)言中函數(shù)是什么有什么作用?

C源程序是由函數(shù)組成的。

成都創(chuàng)新互聯(lián)堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:成都做網(wǎng)站、網(wǎng)站設(shè)計(jì)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時(shí)代的仙居網(wǎng)站設(shè)計(jì)、移動(dòng)媒體設(shè)計(jì)的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!

C程序是由一組或是變量或是函數(shù)的外部對(duì)象組的。 函數(shù)是一個(gè)自我包含的完成一定相關(guān)功能的執(zhí)行代碼段。

從函數(shù)定義的角度看,函數(shù)可分為庫(kù)函數(shù)和用戶定義函數(shù)兩種。

1)庫(kù)函數(shù)

由C系統(tǒng)提供,用戶無(wú)須定義, 也不必在程序中作類型說(shuō)明,只需在程序前包含有該函數(shù)原型的頭文件即可在程序中直接調(diào)用。在前面各章的例題中反復(fù)用到printf 、 scanf 、 getchar 、putchar、gets、puts、strcat等函數(shù)均屬此類。

(2)用戶定義函數(shù)

由用戶按需要寫(xiě)的函數(shù)。對(duì)于用戶自定義函數(shù), 不僅要在程序中定義函數(shù)本身, 而且在主調(diào)函數(shù)模塊中還必須對(duì)該被調(diào)函數(shù)進(jìn)行類型說(shuō)明,然后才能使用。

2. C語(yǔ)言的函數(shù)兼有其它語(yǔ)言中的函數(shù)和過(guò)程兩種功能,從這個(gè)角度看,又可把函數(shù)分為有返回值函數(shù)和無(wú)返回值函數(shù)兩種。

(1)有返回值函數(shù)

此類函數(shù)被調(diào)用執(zhí)行完后將向調(diào)用者返回一個(gè)執(zhí)行結(jié)果, 稱為函數(shù)返回值。如數(shù)學(xué)函數(shù)即屬于此類函數(shù)。 由用戶定義的這種要返回函數(shù)值的函數(shù),必須在函數(shù)定義和函數(shù)說(shuō)明中明確返回值的類型。

(2)無(wú)返回值函數(shù)

此類函數(shù)用于完成某項(xiàng)特定的處理任務(wù), 執(zhí)行完成后不向調(diào)用者返回函數(shù)值。這類函數(shù)類似于其它語(yǔ)言的過(guò)程。 由于函數(shù)無(wú)須返回值,用戶在定義此類函數(shù)時(shí)可指定它的返回為“空類型”, 空類型的說(shuō)明符為“void”。

3. 從主調(diào)函數(shù)和被調(diào)函數(shù)之間數(shù)據(jù)傳送的角度看又可分為無(wú)參函數(shù)和有參函數(shù)兩種。

(1)無(wú)參函數(shù)

函數(shù)定義、函數(shù)說(shuō)明及函數(shù)調(diào)用中均不帶參數(shù)。 主調(diào)函數(shù)和被調(diào)函數(shù)之間不進(jìn)行參數(shù)傳送。 此類函數(shù)通常用來(lái)完成一組指定的功能,可以返回或不返回函數(shù)值。

(2)有參函數(shù)

也稱為帶參函數(shù)。在函數(shù)定義及函數(shù)說(shuō)明時(shí)都有參數(shù), 稱為形式參數(shù)(簡(jiǎn)稱為形參)。在函數(shù)調(diào)用時(shí)也必須給出參數(shù), 稱為實(shí)際參數(shù)(簡(jiǎn)稱為實(shí)參)。 進(jìn)行函數(shù)調(diào)用時(shí),主調(diào)函數(shù)將把實(shí)參的值傳送給形參,供被調(diào)函數(shù)使用。

4. C語(yǔ)言提供了極為豐富的庫(kù)函數(shù), 這些庫(kù)函數(shù)又可從功能角度作以下分類。

(1)字符類型分類函數(shù)

用于對(duì)字符按ASCII碼分類:字母,數(shù)字,控制字符,分隔符,大小寫(xiě)字母等。

(2)轉(zhuǎn)換函數(shù)

用于字符或字符串的轉(zhuǎn)換;在字符量和各類數(shù)字量 (整型, 實(shí)型等)之間進(jìn)行轉(zhuǎn)換;在大、小寫(xiě)之間進(jìn)行轉(zhuǎn)換。

(3)目錄路徑函數(shù)

用于文件目錄和路徑操作。

(4)診斷函數(shù)

用于內(nèi)部錯(cuò)誤檢測(cè)。

(5)圖形函數(shù)

用于屏幕管理和各種圖形功能。

(6)輸入輸出函數(shù)

用于完成輸入輸出功能。

(7)接口函數(shù)

用于與DOS,BIOS和硬件的接口。

(8)字符串函數(shù)

用于字符串操作和處理。

(9)內(nèi)存管理函數(shù)

用于內(nèi)存管理。

(10)數(shù)學(xué)函數(shù)

用于數(shù)學(xué)函數(shù)計(jì)算。

(11)日期和時(shí)間函數(shù)

用于日期,時(shí)間轉(zhuǎn)換操作。

(12)進(jìn)程控制函數(shù)

用于進(jìn)程管理和控制。

(13)其它函數(shù)

用于其它各種功能。

函數(shù)可以避免重復(fù)的書(shū)寫(xiě)。比如一個(gè)運(yùn)算要在不同的地方多次進(jìn)行,就不必把這么多行都寫(xiě)一遍,調(diào)用一個(gè)函數(shù)就行了。同時(shí)減少不必要的變量。從而使程序大大簡(jiǎn)化。

庫(kù)函數(shù)就比較高深了,它的好處我現(xiàn)在還沒(méi)有切實(shí)體會(huì)到。

c語(yǔ)言中有關(guān)函數(shù)的說(shuō)法以下正確的是?

標(biāo)準(zhǔn)ANSI/ISO C不允許函數(shù)的嵌套定義。某些方言如GNU C允許函數(shù)的嵌套定義,并有限地支持閉包。學(xué)習(xí)C語(yǔ)言應(yīng)以標(biāo)準(zhǔn)C為準(zhǔn),所以,C正確。fun((2,3), (4,5+6,7))含有2個(gè)參數(shù),每個(gè)參數(shù)均為一個(gè)逗號(hào)表達(dá)式,值分別為3和7,相當(dāng)于fun(3, 7)。所以,B正確。

c語(yǔ)言關(guān)于函數(shù)調(diào)用

1iscore是整數(shù)數(shù)組,iscore[10]是一個(gè)整數(shù),并且這個(gè)整數(shù)已經(jīng)超出了數(shù)組定義時(shí)的內(nèi)存范圍;average( )函數(shù)的參數(shù)為數(shù)組,你提供個(gè)整數(shù)當(dāng)參數(shù)當(dāng)然不對(duì)

2average函數(shù),不論是從函數(shù)類型,到內(nèi)部實(shí)現(xiàn),計(jì)算的平均數(shù)都是整型,所以輸出就沒(méi)小數(shù)了。

average函數(shù) 改為 float 型,average函數(shù)和main函數(shù)中的iresult 改為 float 型;

main中 printf("%d",iresult); %d改為%f

136、以下對(duì)C語(yǔ)言函數(shù)的有關(guān)描述中,正確的是

正確答案是A.

B選項(xiàng)。不能嵌套定義。C選項(xiàng),函數(shù)可以沒(méi)有返回值。D選項(xiàng),沒(méi)有必要放在同一個(gè)c文件中,用其他c文件的函數(shù)可以給其定義的地方函數(shù)名前面加extern修飾。

以下對(duì)C語(yǔ)言函數(shù)的有關(guān)描述中,不正確的描述是哪個(gè)?(選擇是問(wèn)題補(bǔ)充里)

A:不可以嵌套定義,可以遞歸調(diào)用

B:不一定有函數(shù)值,像void類型。

C:可以放在多個(gè)文件中,包含相應(yīng)的頭文件,就像庫(kù)函數(shù)的調(diào)用,包含相應(yīng)的頭文件即可。

D:這個(gè)正確,函數(shù)值傳遞,是單向傳遞。

所以ABC

C語(yǔ)言中,下列關(guān)于函數(shù)的敘述中,正確的的? 解釋下為什么,狂謝

C正確

A.函數(shù)可以沒(méi)有返回值,如:

void Show(int x)

{

printf("%d\n",x);

}

這個(gè)函數(shù)的功能僅僅是將傳入的x輸出到控制臺(tái),它沒(méi)有返回值,但是可用。

B.函數(shù)可以嵌套調(diào)用,但不可以嵌套定義。標(biāo)準(zhǔn)C語(yǔ)言不支持嵌套定義,但是有編譯器是支持的,如gcc,下面這個(gè)程序在gcc編譯和運(yùn)行是沒(méi)有任何問(wèn)題的,在VC6.0中編譯不過(guò),本題中指的應(yīng)該是標(biāo)準(zhǔn)C語(yǔ)言。

#includestdlib.h

#includestdio.h

int main()

{

void f(int i)//嵌套定義函數(shù)體

{

printf("%d\n",i);

}

int i=1;

f(i);

i=2;

f(i);

return 0;

}

C,對(duì)。函數(shù)調(diào)用中發(fā)生的數(shù)據(jù)傳送是單向的。即只能把實(shí)參的值傳送給形參,而不能把形參的值反向地傳送給實(shí)參。 因此在函數(shù)調(diào)用過(guò)程中,形參的值發(fā)生改變,而實(shí)參中的值不會(huì)變化,如想實(shí)參的值也改變就必須傳入指針。

D.main函數(shù)也是一個(gè)函數(shù),將它看成普通的函數(shù)就可以了,它可以放在任何的位置,只是C語(yǔ)言是以main為入口的,那么在執(zhí)行main函數(shù)時(shí),在它(main)的前面就必須要有其他函數(shù)的聲明或者定義。如下面例子的兩種形式都是正確的。

形式1,其它函數(shù)的定義放在main函數(shù)前。

#includestdio.h

void Show(int x) //函數(shù)定義

{

printf("%d\n",x);

}

void main()

{

int x = 0;

Show(0);

}

形式2,其他函數(shù)定義放在main函數(shù)后。

#includestdio.h

void Show(int x);//函數(shù)聲明

void main()

{

int x = 0;

Show(0);

}

void Show(int x) //函數(shù)定義

{

printf("%d\n",x);

}

標(biāo)題名稱:在c語(yǔ)言中下面關(guān)于函數(shù) 在C語(yǔ)言函數(shù)中,哪個(gè)函數(shù)是必須的?
網(wǎng)頁(yè)URL:http://www.muchs.cn/article36/hggdpg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站策劃、動(dòng)態(tài)網(wǎng)站、外貿(mào)網(wǎng)站建設(shè)、標(biāo)簽優(yōu)化、域名注冊(cè)、移動(dòng)網(wǎng)站建設(shè)

廣告

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

營(yíng)銷型網(wǎng)站建設(shè)