C語言乙個呼叫函式程式為什麼fun裡不用寫實參?

2025-07-08 23:05:08 字數 2440 閱讀 5568

1樓:網友

因為函式根本就沒有起到任何作用,是用來混淆視聽的。

這個題目是要你判斷k的值吧?

應該就是3,最後列印的就是main函式里面臨時變數k的值。

在c語言程式中,如果主函式有個這個引數,我在寫fun函式的時候能不能定義這個引數?

2樓:聽不清啊

main函式里定義了sum這個變數,fun函式也可以定義sum這個變數的:

#include

int fun(int n)

main()

3樓:匿名使用者

可以。各個函式內定義的引數名不衝突,可以相同。

4樓:網友

可以。每個變數都有其作用域。其作用率一般都是在定義變數時所處的層次(在本例可以理解為函式)內。

c語言fun函式的功能是交換形參的值,不能交換實參的值,都是按值傳遞為什麼不能改變實參的值

5樓:網友

void fun(int *a, int *b)因為函式中襲,形參a,b中儲存bai的都是實參的位址du值,c=a;a=b;b=c;這行**zhi,只是把形參a,b的位址值進行了dao互換,對呼叫函式的實參所儲存的結果是沒有任何影響的。如果換成如下**:

void fun(int *a, int *b)互換的是指標所指空間的值,即互換了呼叫函式的實參所儲存的數值。

c語言呼叫函式時實參需要定義型別麼

6樓:吉祥二進位

實參必須要指明資料型別,而且實參和形參的資料型別必須一致。

主要原因,因為資料型別反應了資料的意義,譬如,0x3f8ccccd這個十六進位數,用int型別來描述它,它就是乙個整數,用float型別來描述它則為。示例**如下。

#include

int main()

事實上c語言中的資料型別,類似於平時說話的」語境「, 它表達了語言的意義,譬如:」謝謝你「和」謝謝你全家「, 謝謝是乙個符號,但是不同的語境下有不同的意義。正是因為此,c語言不管是函式引數傳遞還是使用識別符號進行運算,都必須指明其資料型別。

7樓:網友

c,呼叫的時候實參是不用定義型別的,形參在定義的時候必須說明型別,以便為形參分配記憶體空間。

8樓:看灰過來了

選擇ca錯:函式呼叫,實參不需要給出定義型別。

b錯:fun函式型別是void,說明沒有返回值,所以不可能賦值給k

d錯:函式呼叫,不需要寫出函式的型別。

9樓:網友

ca:是函式宣告,不是呼叫;b:返回型別錯誤;d呼叫時,不用返回型別void。

c語言呼叫函式後,為什麼實參的值沒有發生改變?

10樓:匿名使用者

你理解錯了。

函式里的實質是 實 參 復 制 形 參你上面s(m)對於函式int s(int x)來說。

函式內部裡只是把m的值1傳給了x.然後x=2x的值改變和m有什麼關係呢。

要想改變m的話可以這麼改寫函式。

int s(int *p)

void main()

區別在於。第二個用的是位址。雖然也是複製形參,但是他們是複製的是 地 址。

所以這裡s(&m) 使得 &m等於p

m和p都是位址,那麼*p和m指的是同乙個位址的值。

所以*p=2本質也就是m=2

11樓:中心離新

因為你用的是值傳遞,需要採用位址傳遞或者用返回值才可以改變m的值。函式改為int s(int x),同時主函式里的s(m)改為m=s(m),這樣就可以了,希望對你有幫助~

12樓:拽陀預闌磩雀

也可以用c++中的引來解決問題。

#include

using namespace std;

int s(int &x)

int main()}

c語言函式的呼叫語句fun((exp1,exp2),(exp3,exp4,exp5))中含有的實參個數有多少個?

13樓:江湖三腳貓

2個實參,分別是exp2和exp5。

逗號表示式,它將以逗號為界,從左到右依次計算每個表示式的值,最後返回最右邊的表示式的值。

下面的c語言程式中,呼叫函式怎麼寫就可以將乙個字串陣列作為實參

14樓:網友

字串陣列不能作為實參,子函式想要使用呼叫函式中的字串可以將字串所在記憶體的位址傳遞過去就可以了(陣列名,或者指標)

15樓:聽不清啊

給出的樣例就是「呼叫函式將乙個字串陣列作為實參」的了。

解釋C語言程式,解釋一個C語言程式

一樓的不對,這個問題這樣解釋 對於 後置時,它在一個語句中會先用被加變數的原值進行操作,操作完以後再對變數進行自增。對於 前置時,它在一個語句中會先對被加變數進行自增,操作完以後再用被加變數改變後的值進行操作。更詳細解釋去看 c程式設計 吧。對於這個例子而言,是先進行計算a a a a a,即a 1...

設計C語言函式,設計一個C語言函式

define n 10 void fun temp n int i 0,j 0 for i 0 i 設計一個c語言函式 急求 c語言 設計一個函式獲得1 20的一個隨機數.子函式的定義該怎麼寫呀?謝謝 include include include int rnd0 int n int main i...

c語言求a a a a a aa n個a 之和 函式呼叫。我這個哪兒錯了

printf su d n su f su是int型別,要用 d輸出。需要說明的是,你這個因為都是int型別,因此a和n的取值範圍很小,稍微大一點的數,就會造成資料溢位。c語言程式設計題 求s a aa aaa aaa a 有n個a a,n都由鍵盤輸入。請問各位哪 找不到哪錯了,我編了一個 和你的不...