自定義函數(shù)的方法:VC中,定義函數(shù)分為兩步:
創(chuàng)新互聯(lián)服務(wù)項(xiàng)目包括寶雞網(wǎng)站建設(shè)、寶雞網(wǎng)站制作、寶雞網(wǎng)頁(yè)制作以及寶雞網(wǎng)絡(luò)營(yíng)銷策劃等。多年來(lái),我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢(shì)、行業(yè)經(jīng)驗(yàn)、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機(jī)構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,寶雞網(wǎng)站推廣取得了明顯的社會(huì)效益與經(jīng)濟(jì)效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到寶雞省份的部分城市,未來(lái)相信會(huì)繼續(xù)擴(kuò)大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!
I.聲明:在main函數(shù)開(kāi)頭定義變量的位置,聲明函數(shù):定義上述函數(shù)聲明是:
int add(int a,int b);
注意分號(hào),聲明前部不能有執(zhí)行語(yǔ)句;
II.把下面的函數(shù)定義部分放在main函數(shù)外部
int add(int a,int b)
{
return a+b;
}
推薦放在main的后花括號(hào)后面,注意此處的int add(int a,int b)后面并沒(méi)有分號(hào)。
VC里面,返回類型是int的函數(shù)可以省略聲明部分
求采納為滿意回答。
就是不需要參數(shù),在調(diào)用的時(shí)候不需要傳遞參數(shù)
例如自己定義一個(gè)void fun(void){};
這就是返回值為空 參數(shù)為空 函數(shù)名為fun的函數(shù)
在c語(yǔ)言中void可以省略 但是一般省略參數(shù) 不省略返回值
調(diào)用的時(shí)候使用fun();就可以了
有些自定義函數(shù)可能會(huì)被頻繁的調(diào)用,所以寫在一個(gè)C文件里是不太方便的。應(yīng)該把這些自定義的函數(shù)寫在一個(gè)C文件里,同時(shí)在一個(gè)頭文件.h文件里聲明。主函數(shù)可以通過(guò)引用該頭文件然后調(diào)用需要的自定義函數(shù)。
舉例如下:
1. 在頭文件(.h)里聲明自定義函數(shù),定義用戶寫的函數(shù);
2. 在一個(gè)C語(yǔ)言文件里寫下自定義函數(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);
可以的,前提是,在使用一個(gè)函數(shù)之前必須先對(duì)他進(jìn)行聲明:
//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ù)可分為庫(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ù)
由用戶按需要寫的函數(shù)。對(duì)于用戶自定義函數(shù), 不僅要在程序中定義函數(shù)本身, 而且在主調(diào)函數(shù)模塊中還必須對(duì)該被調(diào)函數(shù)進(jìn)行類型說(shuō)明,然后才能使用。
自定義函數(shù)聲明void表明函數(shù)無(wú)返回值,但不決定自定義函數(shù)是否有參數(shù),這是兩回事
如void fun(int a, int b) { ... ... }函數(shù)帶參數(shù),但無(wú)返回值
若聲明類型為void fun(void) { ... ... }或void fun() { ... ... }則表明函數(shù)既沒(méi)有參數(shù),也沒(méi)有返回值
若為float fun(int a, int b) { ... ... }表明函數(shù)有返回值,返回值類型為float,函數(shù)也帶參數(shù)
若為float fun(void) { ... ... }表明函數(shù)有返回值,返回值類型為float ,不帶參數(shù)
明白了嗎?
寫“寫自定義函數(shù)”,是實(shí)現(xiàn)“模塊化設(shè)計(jì)”的手段。簡(jiǎn)單地說(shuō),可以使程序更容易查錯(cuò)、維護(hù)、更新、實(shí)現(xiàn)代碼的重復(fù)使用。
模塊化設(shè)計(jì),簡(jiǎn)單地說(shuō)就是程序的編寫不是開(kāi)始就逐條錄入計(jì)算機(jī)語(yǔ)句和指令,而是首先用主程序、子程序、子過(guò)程等框架把軟件的主要結(jié)構(gòu)和流程描述出來(lái),并定義和調(diào)試好各個(gè)框架之間的輸入、輸出鏈接關(guān)系。逐步求精的結(jié)果是得到一系列以功能塊為單位的算法描述。以功能塊為單位進(jìn)行程序設(shè)計(jì),實(shí)現(xiàn)其求解算法的方法稱為模塊化。模塊化的目的是為了降低程序復(fù)雜度,使程序設(shè)計(jì)、調(diào)試和維護(hù)等操作簡(jiǎn)單化。改變某個(gè)子功能只需相應(yīng)改變相應(yīng)模塊即可。
所謂的模塊化設(shè)計(jì),簡(jiǎn)單地說(shuō)就是將產(chǎn)品的某些要素組合在一起,構(gòu)成一個(gè)具有特定功能的子系統(tǒng),將這個(gè)子系統(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é)合起來(lái),可以同時(shí)滿足產(chǎn)品的功能屬性和環(huán)境屬性,一方面可以縮短產(chǎn)品研發(fā)與制造周期,增加產(chǎn)品系列,提高產(chǎn)品質(zhì)量,快速應(yīng)對(duì)市場(chǎng)變化;另一方面,可以減少或消除對(duì)環(huán)境的不利影響,方便重用、升級(jí)、維修和產(chǎn)品廢棄后的拆卸、回收和處理。