c語言中函式能呼叫函式嗎,C語言中函式能呼叫函式嗎

時間 2021-12-19 11:35:47

1樓:來自天鵝洞尊敬的薔薇

你說的是函式巢狀吧?可以的 只是你這個函式a()應該後面沒有分號的!

2樓:匿名使用者

這很明顯是可以的,你想想,主函式也是乙個函式對不對,可是裡面又呼叫有printf() scanf()函式,所以,學習語言是要很靈活的,畢竟你不可能只靠一種語言。

補充下:呼叫可以巢狀,但是定義不可以。

3樓:匿名使用者

可以呼叫的

但是你呼叫前,最好宣告一下

這樣隨便怎麼排序都不會出錯

ex:a();

b();

main()

a();

b()養成良好的**習慣

對你以後的大工程變成很有幫助

希望我的回答對你有所幫助哈

4樓:匿名使用者

#include

int feven(int x);

int fodd(int x);

int feven(int x)

void main()

遞迴問題 就是函式呼叫函式

5樓:匿名使用者

可以的自己呼叫自己也是允許的

6樓:沒有響應

當然可以 自己呼叫自己都可以

a(){

a()}

這樣都可以

7樓:匿名使用者

c語言提供將不同型別資料組合在一起構成新資料型別的功能,結構體就是其中一致型別,如:

struct newtype

;函式呼叫,就是使用函式了。首先需要理解什麼是函式?

c語言為了程式設計方便起見,向程式設計師提供將程式進一步分解,並將程式**中相同功能模組**組合在一起的功能,這個功能模組就是函式。它也是c語言封裝的一種最重要形式,它提供了良好的**重用方法。

這樣程式在某一位置要使用該函式的功能就可以呼叫該函式。

c語言中可以在乙個函式中呼叫另乙個函式嗎

8樓:小知知快長大

其實你從學c語言開始的第乙個程式就是在乙個函式中呼叫另乙個函式

main()

這個就是在main()函式中呼叫printf()函式

9樓:

如果不行的話,你還能在哪呼叫函式呢?

函式入口就是main 函式,一切語句都是在函式中的,呼叫當然也是

10樓:匿名使用者

當然可以了...還能在函式裡呼叫它自己(遞迴)

11樓:_肖小海

可以啊 但是呼叫的函式需要先宣告或者定義,或者是公用函式

12樓:匿名使用者

可以,,在特殊函式裡面

在c語言中主函式如何呼叫子函式?

13樓:

#include

#include

int test1(int a)

int main()

c語言中函式的呼叫

14樓:逃離

int anjian(int i)

m=anjian(n )%3; \如果當p2.0管腳有低電平時,請問m能得到值麼?

這句寫在函式中,例如main()或其他子函式中。

如果再anjian()中,n的值在anjian()呼叫前賦給,或在前宣告其值!

15樓:鳳凰舞者論

如果說,寫函式的話,沒問題的。比如

int anjian(int i)

如果是呼叫函式的話,需要先定義,後呼叫的。

16樓:小精靈加油

那句m=anjian(n )%3;好像是用在主函式中的,函式呼叫

17樓:前慶

初略看了下 好像沒問題

c語言中怎麼呼叫函式?謝謝

18樓:墨陌沫默漠末

c語言中,函式呼叫的一般形式為:

函式名(實際參數列)

對無參函式呼叫時則無實際參數列。實際參數列中的引數可以是常數、變數或其它構造型別資料及表示式。各實參之間用逗號分隔。

#include

int fun(int x, int y); // 函式宣告,如果函式寫在被呼叫處之前,可以不用宣告

void main()

// 自定義函式fun

int fun(int x, int y)  // 函式首部

中的語言為函式體

return x>y ? x : y;  // 返回x和y中較大的乙個數

}c語言中不允許作巢狀的函式定義。因此各函式之間是平行的,不存在上一級函式和下一級函式的問題。但是c語言允許在乙個函式的定義中出現對另乙個函式的呼叫。

這樣就出現了函式的巢狀呼叫。即在被調函式中又呼叫其它函式。這與其它語言的子程式巢狀的情形是類似的。其關係可表示如圖。

圖表示了兩層巢狀的情形。其執行過程是:執行main函式中呼叫a函式的語句時,即轉去執行a函式,在a函式中呼叫b 函式時,又轉去執行b函式,b函式執行完畢返回a函式的斷點繼續執行,a函式執行完畢返回main函式的斷點繼續執行。

19樓:匿名使用者

給你個例子:

#include

//寫好加法,以便呼叫

int sum(int x1,int x2)void main()

總之:就是你把一種方法寫到單獨的塊,這裡就是sum()函式,執行乙個單一的功能,在main函式呼叫就是了!

20樓:靳玉英相香

你的**錯了很多,第一點,

split函式

應該是void

因為你直接對陣列的位址進行了操作!

第二點,你的

main函式

的for迴圈

沒有考慮到陣列有些

陣列元素

的值是不可預知的,

第三點,你的陣列應該有結束符號'\0'。

21樓:天雲一號

c語言呼叫函式

就是先定義並宣告函式,之後再根據定義函式的格式呼叫。

下面舉例來說明函式呼叫方法:

#include

int fun(int x, int y); // 函式宣告,如果函式寫在被呼叫處之前,可以不用宣告

void main()

// 自定義函式fun

int fun(int x, int y)  // 函式首部中的語言為函式體

return x>y ? x : y;  // 返回x和y中較大的乙個數}

22樓:你好大鶴

函式分為庫函式和自定義函式,在呼叫庫函式時只要標明標頭檔案(所謂標頭檔案就是乙個東西,裡面包括了一些函式各宣告之類的,當你要呼叫它中的函式時就就得先向程式說明你要呼叫這個檔案裡的函式,否則有有侵權行為哦)可以在主調函式中呼叫這個標頭檔案裡的所有函式了,例如標頭檔案為#include你就可以在主調函式中呼叫這個標頭檔案裡的函式:

main

呼叫自定義函式時其實和呼叫庫函式一樣的,只不過這個函式是你自己定義的,再如:

mainf()

23樓:du知道君

跟呼叫庫函式一樣,只不過這個自定義函式得你自己寫,如果自定義函式在main()函式之後定義的話,,就得在main()前先宣告,main()中呼叫,main()後定義,如下簡易**:

#include

void print(); //使用者自定義函式宣告void main()

void print() //使用者自定義函式定義如果自定義函式在main()之前已定義,則只需要進行main()前定義,和main()中呼叫了,簡單**如下:

#include

void print() //使用者自定義函式定義void main()

24樓:prince石進華

#include

int main()

int max4(int a,int b,int c,int d)  //這是函式具體的實現**,這句是函式名,它和前面的宣告不同之處就是沒後面的分號,大括號內為函式**,這個函式的作用是從4個數中選出最大的數,

int max2(int a,int b)//這是從兩個中選出最大的數

#include//簡化**如下

int max2(int a,int b)int max4(int a,int b,int c,int d)int main(void)

希望可以幫到你。

25樓:

你說的是遞迴呼叫,舉例:

int fun(int x)

void main(void)

26樓:健康聰明寶貝

本次課程主要講解vs13下如何使用輸出函式printf,以及相關的格式輸出說明符的呼叫,對於不是計算機專業想要學程式設計的學生來說,是乙個很好的基礎教程,希望大家可以認真跟我一起從0基礎開始學開發!

27樓:匿名使用者

定義函式

返回型別 函式名 (形參)

比如 int big(int i1, inti2)呼叫的話 就是

big( 1 ,2 );

表示式big( 1 ,2 ) 得到的其實就是 2

28樓:匿名使用者

直接寫函式名,寫好相關的引數,在結束時加上';'就完成了呼叫了,但是這個函式必須要存在啊,否則會報錯的

29樓:匿名使用者

#include

int sum(int x,int y)

void main()

30樓:匿名使用者

首先函式呼叫要宣告函式(如果是庫函式,可以直接呼叫,當然了,是要包含相應的標頭檔案),

然後在需要呼叫的地方把函式名copy下,加上相應的引數,最後別完了加上「;」就ok了!

31樓:匿名使用者

少乙個頭函式,住函式沒有返回值,應該用void。

#include

#include

int sum(int x,int y)

void main()

32樓:匿名使用者

修改後可以執行的程式:

#include

#include

int sum(int x,int y)

void main()

改正的錯誤:

1.printf("z=%d",z);無%d,則不能輸出z值2.scanf("%d",&a); &表示輸入到a3.

用到getch();時需加標頭檔案#include4.無返回值函式需加void

33樓:匿名使用者

你這個編譯是成功的.

在函式體內的是實參或是說參加運算的為實參.

形參就是在函式體外的.

34樓:睢旭衣育

其實當呼叫函式的時候,系統會將呼叫函式的位址壓棧,然後轉到被呼叫函式執行,等子函式執行完了再將堆疊中的位址彈出來,這樣就繼續執行呼叫函式後面的語句了。

35樓:wo沉睡森林

多看書,呵呵,我也不懂

c語言中能否在乙個自定義函式中呼叫另乙個自定義函式?

36樓:七班趙子龍

當然copy

可以!c語言程式的最基本的模組就是函式,

該程式規定:任意函式都可以呼叫其它任意乙個函式,包括函式本身;

1、函式呼叫自己本身, 這種稱為遞迴;

通過遞迴,計算1+2+3+...+n值的**:

2、自定義函式呼叫其它自定義函式的例子:

這個例子就是主函式呼叫自定義函式fun2,然後fun2呼叫另乙個自定義函式fun1;

c語言函式呼叫問題,C語言函式呼叫問題

貌似風輕 函式的使用有兩種方式 1 在main函式之前宣告,最後在寫函式體 include void print line 宣告void print message 宣告main void print line void print message 2 直接在main函式之前寫函式體 include...

c語言函式呼叫問題,C語言如何呼叫函式

int 和 void 的區別 int 返回值,void 不返回值。當需要返回值給主函式時,用int 當不需要返回值給主函式時,用void。至於括號裡的內容 int n是接收主函式的實參作為形參,就是函式中要用到這個形參。如果不需要從主函式中接收實參,那麼就用void。至於返回值 當函式返回值給主函式...

C語言的函式呼叫是遞迴嗎,C語言的函式呼叫是遞迴嗎?

沒記錯的話,c語言中的函式直接或間接呼叫自己的過程叫遞迴例如 有main函式,函式a,c。直接呼叫型遞迴 main函式呼叫函式a,而a不能直接解決問題,所以改變引數後去再次呼叫函式a。比如有三個人,人1說他比人2小1歲,人2說他比人3小一歲,人3說他10歲,求人1幾歲。就需要遞迴解決,簡介呼叫就是m...

c語言函式的遞迴呼叫,C語言的函式巢狀呼叫與函式遞迴呼叫有什麼區別

是的,區域性變數會新定義一次,不過僅侷限於區域性變數 全域性變數和靜態變數都是全域性的,要是還沒學暫時不用管 並不能說是 同時 應該說是 同樣 時間上肯定是按照呼叫的先後順序的。遞迴確實會讓程式變慢,但只是相對於不需要遞迴的等價 而且原因也不是記憶體分配導致的,而是因為函式呼叫產生的。這個遞迴呼叫怎...

c語言函式呼叫

記得可以直接 include 1.c 或者使用標頭檔案,鏈結時同時鏈結上1.c 剛才試了一下,include 1.c 是可以的 1.c include void ttt 2.c include include 1.c main 最簡單的辦法是在另外乙個檔案中 include 1.c 同時要跟另外這個...