1.函數(shù)中的return語句是用來獲得函數(shù)的返回值的,通過它將被調(diào)函數(shù)的中一個(gè)確定值帶回主函數(shù),供主函數(shù)使用。
成都創(chuàng)新互聯(lián)公司專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于成都網(wǎng)站設(shè)計(jì)、網(wǎng)站制作、南山網(wǎng)絡(luò)推廣、重慶小程序開發(fā)公司、南山網(wǎng)絡(luò)營(yíng)銷、南山企業(yè)策劃、南山品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運(yùn)營(yíng)等,從售前售中售后,我們都將竭誠(chéng)為您服務(wù),您的肯定,是我們最大的嘉獎(jiǎng);成都創(chuàng)新互聯(lián)公司為所有大學(xué)生創(chuàng)業(yè)者提供南山建站搭建服務(wù),24小時(shí)服務(wù)熱線:18980820575,官方網(wǎng)址:www.rwnh.cn
2.定義函數(shù)的類型是一般應(yīng)該與return語句的返回值的類型一致。如果不同,則以函數(shù)類型為準(zhǔn)。
看看這個(gè)題(編寫函數(shù)求Fibonacci級(jí)數(shù))
#include "stdio.h"
int fib(int n)
{
int z;
if(n=0) printf("有誤");
else
if(n==1||n==2) z=1;
else
z=fib(n-1)+fib(n-2);
return(z);
}
void main(){
int n,i;
for(n=1,i=0;n=100;n++){
{printf("%10d ",fib(n));
i++;}
if(i%5==0) printf("\n");}
}
從參數(shù)角度分類:1.有參函數(shù):函數(shù)有形參,可以是一個(gè),或者多個(gè),參數(shù)的類型隨便,完全取決于函數(shù)的功能。2.無參函數(shù):函數(shù)沒有參數(shù),在形參列表的位置寫一個(gè)viod或什么都不寫。
每個(gè)C程序都至少有一個(gè)函數(shù),即主函數(shù)main(),如果程序的任務(wù)比較簡(jiǎn)單,全部的代碼都寫在main()函數(shù)中,但是,在實(shí)際開發(fā)中,程序的任務(wù)往往比較復(fù)雜,如果全部的代碼都寫在main()函數(shù)中,main()函數(shù)將非常龐大臃腫,結(jié)構(gòu)復(fù)雜,代碼重復(fù)。
詳細(xì)信息:
我們可以根據(jù)程序的邏輯和任務(wù)的分工把代碼劃分到不同的自定義函數(shù)中,main()更關(guān)心業(yè)務(wù)邏輯和處理流程,需要執(zhí)行具體任務(wù)的時(shí)候,調(diào)用這些自定義的函數(shù)就可以了。
為了方使理解,我們把函數(shù)分為兩種:一種是庫(kù)函數(shù),一種是自定義函數(shù)。庫(kù)函數(shù)是C語言提供的,或系統(tǒng)提供的,實(shí)現(xiàn)了某些基本的功能,例如scanf、printf,在程序中可以直接使用。
自定義函數(shù)是程序員為了完成某項(xiàng)任務(wù)而編寫的函數(shù),目的是為了實(shí)現(xiàn)某項(xiàng)的功能或讓主程序更簡(jiǎn)潔。程序員在使用自定義函數(shù)之前,必須先聲明和定義。
構(gòu)成一個(gè)C語言程序的函數(shù)可以劃分為兩種基本類型:
一種是由C語言系統(tǒng)提供的函數(shù),這類函數(shù)用戶可以直接在程序中調(diào)用,從而完成一定的功能,這類函數(shù)也被稱為C語言的“庫(kù)函數(shù)”或“標(biāo)準(zhǔn)函數(shù)”。
另一種是由用戶在程序中定義的函數(shù),是由用戶根據(jù)應(yīng)用程序的需要而定義、用以完成特定功能的程序模塊,稱為“
用戶自定義函數(shù)”。
定義一個(gè)函數(shù)需要確定以下內(nèi)容:
1、函數(shù)的返回值類型
2、函數(shù)的名稱
3、函數(shù)的參數(shù)
4、函數(shù)主體代碼塊
示例代碼:
int definePlus(int a, int b)
{
a = a + 1;
b = b + 1;
return a + b;
}
例如上面代碼中就定義了一個(gè)返回值為int類型的函數(shù),其函數(shù)名為definePlus,一對(duì)小括號(hào)中的內(nèi)容為這個(gè)函數(shù)的參數(shù),也就是說這個(gè)函數(shù)有兩個(gè)傳入?yún)?shù)int a和int b。
在函數(shù)體內(nèi),分別讓a在原來的基礎(chǔ)上加1,讓b在原來的基礎(chǔ)上加1,然后使用return關(guān)鍵字返回a + b的和。如果a的值是2,而b的值是3,那么這個(gè)函數(shù)的返回值則是7。
擴(kuò)展資料:
如果一個(gè)變量聲明時(shí)在前面使用 * 號(hào),表明這是個(gè)指針型變量。換句話說,該變量存儲(chǔ)一個(gè)地址,而 *(此處特指單目運(yùn)算符 * ,下同。C語言中另有 雙目運(yùn)算符 *) 則是取內(nèi)容操作符,意思是取這個(gè)內(nèi)存地址里存儲(chǔ)的內(nèi)容。指針是 C 語言區(qū)別于其他同時(shí)代高級(jí)語言的主要特征之一。
指針不僅可以是變量的地址,還可以是數(shù)組、數(shù)組元素、函數(shù)的地址。通過指針作為形式參數(shù)可以在函數(shù)的調(diào)用過程得到一個(gè)以上的返回值,不同于return(z)這樣的僅能得到一個(gè)返回值。
指針是一把雙刃劍,許多操作可以通過指針自然的表達(dá),但是不正確的或者過分的使用指針又會(huì)給程序帶來大量潛在的錯(cuò)誤。
當(dāng)前標(biāo)題:c語言自定義函數(shù)有哪2種 c語言自定義函數(shù)類型有哪些
標(biāo)題網(wǎng)址:http://www.rwnh.cn/article26/dosijjg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供ChatGPT、外貿(mào)建站、Google、定制開發(fā)、網(wǎng)站排名、面包屑導(dǎo)航
聲明:本網(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í)需注明來源: 創(chuàng)新互聯(lián)