先看
創(chuàng)新互聯(lián)堅持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:做網(wǎng)站、成都做網(wǎng)站、企業(yè)官網(wǎng)、英文網(wǎng)站、手機端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時代的龍泉網(wǎng)站設(shè)計、移動媒體設(shè)計的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!
fun(a+
)
里面
fun(d)
d是全局變量
值為1
再看fun(1)
把1傳給fun的形參p
進入fun
p
為1
fun內(nèi)有
局部靜態(tài)變量d
初值為5
d+=p
使之
變?yōu)?
輸出d
(局部變量,全局變量名也是b被屏蔽,因此這個d是fun內(nèi)的局部變量d)
所以輸出6
return
返回6
fun(1)返回6
fun(a+6)
a是3
3+6的值9
傳給fun的形參p
這是第二次調(diào)用fun函數(shù)
p為
9
由于d是
靜態(tài)局部變量
故再次調(diào)用fun函數(shù)
其中為上一次調(diào)用保留的值6
d+=p
使之
變?yōu)?5
fun函數(shù)內(nèi)
輸出
靜態(tài)局部變量d的值15
fun(9)返回15
返回的15給main函數(shù)的printf輸出
有輸出15
所以是
61515
#define K 4 定義K為常量4
#define N 5 定義N為常量4(注意K、N均為大寫,不同于下面的小寫k、n)
long f1(int n,int k) 定義函數(shù)f1,形參為n,k
{ long power=n; 初始化變量power賦值為n
int i; 定義變量i
for(i=1;ik;i++) power *= n; 此用了一個for循環(huán),i的值從1到k-1(因為ik,不是i=k),power*=n就是power=power*n的意思,于是每循環(huán)一次,power就乘一次n,于是f1函數(shù)指的是n的k次方。(因為power本身為n,然后又循環(huán)k-1次)
return power; 返回power值,就是n的k次方。
}
long f2(int n,int k) 定義函數(shù)f1,形參為n,k
{ long sum=0; 初始化變量sum賦值為0
int i; 定義變量i
for(i=1;i=n;i++) sum += f1(i, k); 此用了一個for循環(huán),i的值從1到n,然后用調(diào)用了f1函數(shù),這樣意思為sum=0+f1(1,k)+f1(2,k)+f1(3,k)+……f1(n,k)
return sum; 返回sum值f1(1,k)+f1(2,k)+f1(3,k)+……f1(n,k)
}
main函數(shù),我就不解釋了哈!
有什么不懂,發(fā)百度消息給我,再探討,呵呵!共同學(xué)習(xí)
在C語言中,所有的函數(shù)定義,包括主函數(shù)main在內(nèi),都是平行的。也就是說,在一個函數(shù)的函數(shù)體內(nèi), 不能再定義另一個函數(shù), 即不能嵌套定義.
在例子中,沒有嵌套定義的.
int max(int a,int b)
{
if(ab)return a;
else return b;
}//這是在定義max
而main()函數(shù)中,
void main()
{
int max(int a,int b);//這是聲明,被調(diào)用函數(shù),定義在main函數(shù)前,可以省略.
int x,y,z;
printf("input two numbers:\n");
scanf("%d%d",x,y);
z=max(x,y);//這是調(diào)用.
printf("maxmum=%d",z);
}
所以不矛盾..
網(wǎng)站名稱:C語言函數(shù)嵌套返回值 c語言的函數(shù)嵌套
當(dāng)前網(wǎng)址:http://www.rwnh.cn/article42/dosgohc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站排名、網(wǎng)站策劃、網(wǎng)頁設(shè)計公司、網(wǎng)站改版、移動網(wǎng)站建設(shè)、面包屑導(dǎo)航
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)