可以的,前提是,在使用一個函數(shù)之前必須先對他進(jìn)行聲明:
我們提供的服務(wù)有:成都做網(wǎng)站、成都網(wǎng)站制作、成都外貿(mào)網(wǎng)站建設(shè)、微信公眾號開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、孟州ssl等。為近1000家企事業(yè)單位解決了網(wǎng)站和推廣的問題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的孟州網(wǎng)站制作公司
//void B();聲明B函數(shù)的存在。
void A()
{
B();//非法,程序執(zhí)行到此時(shí)并不知道B函數(shù)的存在。
}
void B()
{
}
或者
#include stdio.h
#include stdlib.h
#include math.h
int fa(int n)
{
int a;
for(a=2;a=sqrt(n*1.0),n%a!=0;a++);
if(asqrt(n*1.0))
return(1);
else
return(0);
}
void main( )
{
int n,q;
scanf("%d",n);
擴(kuò)展資料
從函數(shù)定義的角度看,函數(shù)可分為庫函數(shù)和用戶定義函數(shù)兩種。
(1)庫函數(shù)
由C系統(tǒng)提供,用戶無須定義, 也不必在程序中作類型說明,只需在程序前包含有該函數(shù)原型的頭文件即可在程序中直接調(diào)用。在前面各章的例題中反復(fù)用到printf 、 scanf 、 getchar 、putchar、gets、puts、strcat等函數(shù)均屬此類。
(2)用戶定義函數(shù)
由用戶按需要寫的函數(shù)。對于用戶自定義函數(shù), 不僅要在程序中定義函數(shù)本身, 而且在主調(diào)函數(shù)模塊中還必須對該被調(diào)函數(shù)進(jìn)行類型說明,然后才能使用。
有些自定義函數(shù)可能會被頻繁的調(diào)用,所以寫在一個C文件里是不太方便的。應(yīng)該把這些自定義的函數(shù)寫在一個C文件里,同時(shí)在一個頭文件.h文件里聲明。主函數(shù)可以通過引用該頭文件然后調(diào)用需要的自定義函數(shù)。
舉例如下:
1. 在頭文件(.h)里聲明自定義函數(shù),定義用戶寫的函數(shù);
2. 在一個C語言文件里寫下自定義函數(shù)的實(shí)現(xiàn)方式,可以寫在主函數(shù)前,也可在主函數(shù)后(需在頭文件前聲明函數(shù));
3. 在主函數(shù)中調(diào)用自定義函數(shù),別忘了頭文件的聲明;
4. 最后編譯所有的涉及到的C文件;
#include stdio.h
void number(int);
int main()
{
for(int i = 0;i10;i++)
{
number(i);
從參數(shù)角度分類:1.有參函數(shù):函數(shù)有形參,可以是一個,或者多個,參數(shù)的類型隨便,完全取決于函數(shù)的功能。2.無參函數(shù):函數(shù)沒有參數(shù),在形參列表的位置寫一個viod或什么都不寫。
每個C程序都至少有一個函數(shù),即主函數(shù)main(),如果程序的任務(wù)比較簡單,全部的代碼都寫在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ù)分為兩種:一種是庫函數(shù),一種是自定義函數(shù)。庫函數(shù)是C語言提供的,或系統(tǒng)提供的,實(shí)現(xiàn)了某些基本的功能,例如scanf、printf,在程序中可以直接使用。
自定義函數(shù)是程序員為了完成某項(xiàng)任務(wù)而編寫的函數(shù),目的是為了實(shí)現(xiàn)某項(xiàng)的功能或讓主程序更簡潔。程序員在使用自定義函數(shù)之前,必須先聲明和定義。
寫“寫自定義函數(shù)”,是實(shí)現(xiàn)“模塊化設(shè)計(jì)”的手段。簡單地說,可以使程序更容易查錯、維護(hù)、更新、實(shí)現(xiàn)代碼的重復(fù)使用。
模塊化設(shè)計(jì),簡單地說就是程序的編寫不是開始就逐條錄入計(jì)算機(jī)語句和指令,而是首先用主程序、子程序、子過程等框架把軟件的主要結(jié)構(gòu)和流程描述出來,并定義和調(diào)試好各個框架之間的輸入、輸出鏈接關(guān)系。逐步求精的結(jié)果是得到一系列以功能塊為單位的算法描述。以功能塊為單位進(jìn)行程序設(shè)計(jì),實(shí)現(xiàn)其求解算法的方法稱為模塊化。模塊化的目的是為了降低程序復(fù)雜度,使程序設(shè)計(jì)、調(diào)試和維護(hù)等操作簡單化。改變某個子功能只需相應(yīng)改變相應(yīng)模塊即可。
所謂的模塊化設(shè)計(jì),簡單地說就是將產(chǎn)品的某些要素組合在一起,構(gòu)成一個具有特定功能的子系統(tǒng),將這個子系統(tǒng)作為通用性的模塊與其他產(chǎn)品要素進(jìn)行多種組合,構(gòu)成新的系統(tǒng),產(chǎn)生多種不同功能或相同功能、不同性能的系列產(chǎn)品。模塊化設(shè)計(jì)是綠色設(shè)計(jì)方法之一,它已經(jīng)從理念轉(zhuǎn)變?yōu)檩^成熟的設(shè)計(jì)方法。將綠色設(shè)計(jì)思想與模塊化設(shè)計(jì)方法結(jié)合起來,可以同時(shí)滿足產(chǎn)品的功能屬性和環(huán)境屬性,一方面可以縮短產(chǎn)品研發(fā)與制造周期,增加產(chǎn)品系列,提高產(chǎn)品質(zhì)量,快速應(yīng)對市場變化;另一方面,可以減少或消除對環(huán)境的不利影響,方便重用、升級、維修和產(chǎn)品廢棄后的拆卸、回收和處理。
自定義函數(shù)是由用戶按需要寫的函數(shù)。這與庫函數(shù)相對應(yīng)的,庫函數(shù)是由c系統(tǒng)提供的函數(shù),已經(jīng)定義好了如printf
、
scanf
、
getchar
、putchar、gets、puts、strcat等函數(shù)均屬此類。
說白了,自定義函數(shù)是是自己寫的,想實(shí)現(xiàn)什么功能就寫什么,然后在用的時(shí)候和庫函數(shù)(系統(tǒng)定義的)的一樣調(diào)用就是了,相當(dāng)于自己增加了一個自己的庫函數(shù)。
標(biāo)題名稱:c語言自定義函數(shù)功能 c語言自定義函數(shù)怎么用
轉(zhuǎn)載來源:http://redsoil1982.com.cn/article44/docpohe.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供用戶體驗(yàn)、云服務(wù)器、網(wǎng)頁設(shè)計(jì)公司、響應(yīng)式網(wǎng)站、微信小程序、小程序開發(fā)
聲明:本網(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)