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

時間 2023-01-11 18:20:09

1樓:匿名使用者

優化了你的程式,問題好多,你自己研究一下吧#include

int ds(int x) /真心看不懂你的ds()函式思想!有那麼複雜嗎?

return x0;

}int yz(int sum1)

int main()

/**如果不為顯示中間結果,這些都可以省。

x0=ds(x);

sum=x+x0;

n++;printf("第%d次計算%d+%d=%d",n,x,x0,sum);

x=sum;

x+=ds(x);

n++;不管第1次輸入的是不是回數,都要算,就把上面的刪除,放開此處if(yz(x))

**/if(i>7)

}return 0;}

c語言函式呼叫問題 50

2樓:滄海雄風

#include

int main()

else}return 0;

}int first()

你那樣迴圈呼叫main函式是不對的。

3樓:匿名使用者

你在printf no 那一行前面加一個else就正常了。

求教 c語言函式呼叫問題

4樓:指尖遊戲

不能,在同一個函式中,所有**是從上往下執行的。

調 用的子函式中的引數可能影響前面所定義的資料,但絕對不會影響呼叫之前的**。

5樓:匿名使用者

沒太看明白你說的問題呢。

把一段**做成函式後,就可以在任意地方呼叫了。

除非函式里有全域性的變數,不然不會影響上下文的程式。

c語言呼叫函式問題

6樓:滄海雄風

你意思用全域性變數?

還有其他方法啊。

你這個算一種。

還有 返回值的方法。

比如 main中呼叫。

int fun(int a,int b)

main()

那麼可以在main函式中用變數來接收這個計算結果和指標操作的方法。

void fun(int *a)

main()

都可以讓子函式改變主函式里的變數而不用搞全域性變數。

7樓:gta小雞

不明白你想表達什麼,但函式宣告時的形式和呼叫時的形式必須一致。例如宣告函式void foo(int, double),則呼叫foo時必須傳遞一個int型和一個double型作為實參。

c語言關於函式呼叫的問題 10

8樓:反翽葚讛笀仕藖

哈哈,自然是不會變了,這是值傳遞,也就是將數值傳給被調函式,要實現通過函式呼叫改變主調函式的變數值,要用陣列傳遞或指標傳遞。

c語言如何呼叫函式

9樓:墨陌沫默漠末

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

函式名(實際參數列)

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

#include

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

void main()

// 自定義函式fun

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

中的語言為函式體。

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

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

10樓:天雲一號

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

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

#include

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

void main()

// 自定義函式fun

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

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

11樓:尖子生管理員小宇

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

12樓:丘燦墨梓榆

static

靜態變數。因為它定義在函式中,所以是區域性靜態變數。區域性靜態變數,在函式返回後儲存單元不釋放;下一次呼叫該函式時,該變數為上次函式返回時的值。

13樓:網友

下面這個是已經除錯好的,希望你參考一下。

#include

#definen10

voidmain()

a[count]=sum;

sum=0;

count++;

j=0;}}

for(i=0;iprintf("%d

",a[i]);

printf("there

are%dnumber

inthis

string",count);}

14樓:鄢綠竺元英

#include

#include

floatjis(float);

main()

floatjis(float

x)這樣就對了,對了一般不需要用double,float的精度已經夠了!還有用數學函式sinx時一定要加上標頭檔案#include

希望對你有所幫助!

15樓:寶燕伍依霜

1)在棧上建立。在執行函式時,函式內區域性變數的儲存單元都在棧上建立,函式執行結束時這些儲存單元自動被釋放。棧記憶體分配運算內建於處理器的指令集中,一般使用暫存器來存取,效率很高,但是分配的記憶體容量有限。

2)從堆上分配,亦稱動態記憶體分配。程式在執行的時候用malloc或new申請任意多少的記憶體,程式設計師自己負責在何時用free或delete來釋放記憶體。動態記憶體的生存期由程式設計師自己決定,使用非常靈活。

3)從靜態儲存區域分配。記憶體在程式編譯的時候就已經分配好,這塊記憶體在程式的整個執行期間都存在。例如全域性變數,static變數。

4)文字常量分配在文字常量區,程式結束後由系統釋放。

5)程式**區。

16樓:匿名使用者

建議你把不用的變數不要用,例如那個s,你也沒用到什麼,還有你的結果在sum函式中顯示了,為什麼還要用到return z這個呢,我有點不明白;.

17樓:匿名使用者

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

#include

#include

int sum(int x,int y)

void main()

18樓:網友

你這個編譯是成功的。

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

形參就是在函式體外的。

19樓:冀峰馬躍

靜態變數麼。

保留上一次的值。

c語言 函式呼叫 的問題。

20樓:匿名使用者

函式都要求有一個返回值,無返回值函式就是說不需要返回值了,通常這類函式的定義型別都是 void 也就是無返回值的意思。

呼叫的時候,比如有一函式寫為:

void print()

在主函式中呼叫的時候直接寫上呼叫函式的函式名就可以 了。

如:int main()

21樓:一千館原創短**

無返回值的函式也是函式名(參數列)這樣呼叫啊。

只是沒有返回值而已。其他沒什麼區別。

c語言呼叫函式的問題 10

22樓:匿名使用者

你寫的程式,函式呼叫前,陣列元素初始化為 全 0。函式呼叫時,函式內 有迴圈 語句,執行: vals[i] =1; 把所有元素 賦新值為 1。

所以輸出 1。 -應修改: void findmax(int vals,int *m) /返回m要用指標 printf("m = d", m); 函式呼叫:

findmax(nums, &value); 函式原型宣告: void findmax(int vals,int *m) ;

在呼叫函式時,函式是怎樣傳值的,c語言函式呼叫時,實參和形參是如何傳遞的?什麼時候要寫指標型變數?求高手指點

毋惜苼 在c語言中,實參將值傳給函式中的形參,實現了自上而下的值傳遞,就可以呼叫函式了。舉個淺顯一點的例子吧 include void main int swap int x,int y 在主函式中,將實參a,b的值傳遞給被呼叫函式中的形參x,y,即將a,b分別代入x,y中計算,即達到了呼叫的目的。...

c語言 函式定義概念問題,C語言 函式定義概念問題

及時澍雨 先舉個例子 include int max int,int 這是函式max的申明,最後要加分號 int main int max int n,int m 這是函式max的定義部分,最後不加分號 不能在函式體內定義函式是什麼意思?就是說函式在程式中不能巢狀定義,這個和pascal語言不同,例...

C語言函式問題

先舉個例子 include int max int,int 這是函式max的申明,最後要加分號 int main int max int n,int m 這是函式max的定義部分,最後不加分號 不能在函式體內定義函式是什麼意思?就是說函式在程式中不能巢狀定義,這個和pascal語言不同,例如上面程式...