c語言中mamin具體用法是怎麼樣的

2021-03-05 10:26:21 字數 5135 閱讀 8084

1樓:碧海風雲

c語言沒有max這個函式,需要自己定義並編寫max函式。

例如源**可以是:

#include

int max (int a, int b)int main()

執行結果

輸入 2 3

輸出 3

2樓:聽不清啊

max()不是一個c語言裡提供給你的函式,而是程式設計師自己定義的。

是你看的那個程式源**上,寫程式的人自己定義了一個名為max的函式。它和main()函式不一樣,main()才是c語言函式庫裡已經定義好的,main()已經被賦予了意義,那就是每個c程式的主函式。而這個max()只是寫那個源**的人自己定義的。

比方說,可以定義一個巨集來完成這個計算:

#include

#define max(a,b) ((a)>(b)?(a):(b))int main()

3樓:匿名使用者

原因很簡單:c不提供max、min等函式。

如果想要實現,有幾種簡單方法:

int min(int x,int y)

#define min(x,y) (((x)<(y))?(x):(y))

將任意一種複製到程式開頭(#include之後,main之前),即可。

4樓:仝蝶晁丙

它們是兩個

巨集定義,並非函式。使用方法如下例所示:

#include

#include

intmain(

void)//結果:

5樓:匿名使用者

c庫裡面沒有max min函式

所以 需要你自己定義的

你得寫一個max函式才行。

6樓:偽笑掩飾憂傷

//這個是自己宣告的函式 求最大值和最小值#include

int max(int x, int y)int min(int x, int y)int main()

7樓:蟹蟹沒有蟹黃堡

有個math庫  math庫裡有max這個函式 #define max(a,b)(a>b?a:b),是c語言版的行內函數

。第三行是一個三目運算子,可以這樣理解:

if ( a > b )

return a;

else

return b;

這是c++版的行內函數,不同的是多了個型別檢查,所以函式的資料型別不一定是float,可以是int,double......inline float max ( float a, float b )// (a>b?a:

b)。上面的與下面語句是等效的:

if ( a > b )

return a;

else

return b。

c語言是一門通用計算機程式語言,應用廣泛。c語言的設計目標是提供一種能以簡易的方式編譯、處理低階儲存器、產生少量的機器碼以及不需要任何執行環境支援便能執行的程式語言。

儘管c語言提供了許多低階處理的功能,但仍然保持著良好跨平臺的特性,以一個標準規格寫出的c語言程式可在許多電腦平臺上進行編譯,甚至包含一些嵌入式處理器(微控制器或稱mcu)以及超級電腦等作業平臺。

二十世紀八十年代,為了避免各開發廠商用的c語言語法產生差異,由美國國家標準局為c語言訂定了一套完整的國際標準語法,稱為ansi c,作為c語言最初的標準。

8樓:二狗出現了

因為max函式未定義。你必須自己實現max函式,才能使用它。

可以寫個函式,也可以用巨集。比如在include下一句寫上:

#define max(x,y) ( x>y?x:y )這句表示:當x>y時,max(x,y)的值為x,反之,則為y。

9樓:匿名使用者

首先 我沒聽說過有max和min關鍵字或者函式呼叫語句

你可以自己寫一個max或者min的函式,然後在主函式裡面進行呼叫

不知道你從**聽來的,不過你要是用max,就要自己編寫這個函式,然後進行呼叫

10樓:**ile一路清新

都檔案都沒包含進去,max函式在**定義了?

沒有找到定義就報錯了

11樓:

結構型別定義和結構變數說明  在實際問題中,一組資料往往具有不同的資料型別。例如, 在學生登記表中,姓名應為字元型;學號可為整型或字元型; 年齡應為整型;性別應為字元型;成績可為整型或實型。 顯然不能用一個陣列來存放這一組資料。

因為陣列中各元素的型別和長度都必須一致,以便於編譯系統處理。為了解決這個問題,c語言中給出了另一種構造資料型別——「結構」。 它相當於其它高階語言中的記錄。

  「結構」是一種構造型別,它是由若干「成員」組成的。 每一個成員可以是一個基本資料型別或者又是一個構造型別。 結構既是一種「構造」而成的資料型別, 那麼在說明和使用之前必須先定義它,也就是構造它。

如同在說明和呼叫函式之前要先定義函式一樣。

一、結構的定義定義一個結構的一般形式為: struct 結構名 ;成員表由若干個成員組成, 每個成員都是該結構的一個組成部分。對每個成員也必須作型別說明,其形式為:

型別說明符 成員名; 成員名的命名應符合識別符號的書寫規定。例如: struct stu;

12樓:匿名使用者

要寫相應的函式 max和min~~

~~~~

13樓:匿名使用者

在第二行輸入

#include

c語言好像沒有max函式。

需自定義函式

14樓:匿名使用者

vc6.0中的max函式需要自己實現

15樓:匿名使用者

c語言沒有這2個函式,max,min是c++ algorithm中的

16樓:匿名使用者

你要引入math.h庫

c語言中max()函式怎麼使用?int max (int a, int y)是什麼意思?

17樓:yx陳子昂

c語言沒有標準的max和min函式。

常規情況下,幾乎所有的編譯器使用巨集來實現 max() 及 min() 函式,

它們一般在 stdio.h 這份檔案中以巨集方式被宣告。

使用巨集來實現的原因一般是因為這兩個函式非常簡單,

它們一般的實現如下:

#define max(a,b) ( ((a)>(b)) ? (a):(b) )

#define min(a,b) ( ((a)>(b)) ? (b):(a) )

使用巨集的另外一個好處是使得該函式具備了「過載」功能,

可以讓傳遞的引數不侷限於某種型別(只限基本型別-非結構型別),如 int 或 char。

c語言問題—max()函式

18樓:壞天空︷囝仔

max裡的叫形

bai參,可以隨便用du哪個都一樣的,大概zhi你是新dao手,不知道什麼是形參和版實參吧~

形參權與實參的區別:

高階語言在設計程式模組時,模組名定義後,緊跟其後所定義的引數(括弧內)被稱為形參(也稱虛參)。當該模組被呼叫時,在主調模組中,出現在被呼叫的模組名後的引數被稱為實參。實參代替虛參的過程被稱為虛、實結合,也稱換參。

多數高階語言的換參是由編譯系統來完成,比如c語言和fortran語言亦是如此。basic語言的換參則是由程式設計人員來完成的。如果只允許實參向虛參傳遞,則被稱為「單向傳遞」,c語言的變數類虛、實結合即是「單向傳遞」。

如果同時允許虛參向實參傳遞,這種傳遞被稱為「雙向傳遞」,fortran 語言定義的子程式即是如此。 當c語言的形參為陣列時,形參不另闢儲存單元,形參與實參共用記憶體儲存單元。這樣,可以節省記憶體。

c語言在定義函式的同時,對於有參函式,也同時定義了形參。在呼叫該函式的同時,也指明瞭實參。實參與形參在記憶體分別佔有兩套不同的儲存單元(陣列除外),但是形參只有在函式被呼叫過程中才分配儲存單元,呼叫結束後形參佔用的單元被釋放。

陣列元素作為實參時,也做為變數來處理。

19樓:匿名使用者

main()是主函式的入口,每一個程式執行都是從這裡開始,int max(int a,int y)是自定義函式返回值為整形,a y是函式形參

20樓:yx陳子昂

c語言沒有bai標準的max和min函式。

常規du情況下,幾乎zhi所有的編譯器使用巨集來dao實現 max() 及 min() 函式,回它們一般在答 stdio.h 這份檔案中以巨集方式被宣告。

使用巨集來實現的原因一般是因為這兩個函式非常簡單,它們一般的實現如下:

#define max(a,b) ( ((a)>(b)) ? (a):(b) )

#define min(a,b) ( ((a)>(b)) ? (b):(a) )

使用巨集的另外一個好處是使得該函式具備了「過載」功能,可以讓傳遞的引數不侷限於某種型別(只限基本型別-非結構型別),如 int 或 char。

21樓:匿名使用者

max()不是一個c語言裡提供給你的函式,而是程式設計師自己定義的。

是你看的那個程式回源**上,寫程答序的人自己定義了一個名為max的函式。它和main()函式不一樣,main()才是c語言函式庫裡已經定義好的,main()已經被賦予了意義,那就是每個c程式的主函式。而這個max()只是寫那個源**的人自己定義的。

就像你編寫程式時可以隨意定義變數,比如定義int a;就是定義了一個名字為a的整形變數而已,你也可以定義為int b;就是改變了他的名字。意義沒有改變。這個max(),你完全可以改名為num(),sum()等等函式,隨意改變它的名字。

int max(int a,int y)的意思是:

第一個int是用來定義max()這個函式為整形函式,max就是這個函式的名字。括號裡面的int a,int y是max函式所帶的引數,引數的意思就是,舉個例子,比如你數學裡面的一個函式f,它的表示式為:y=3x,這個表示式是我隨便寫的哈,那他的函式名就為f,引數就是y和x。

當然數學和程式裡的函式本質是完全不同的。int a,int y就是定義引數a為整形,引數y也為整形。

樓主,明白了嗎?

22樓:匿名使用者

這就是一函式的定義啊..

c語言中if語句的巢狀怎理解,C語言中三個if語句的巢狀怎理解

不知道你說的是橫 向還是縱向 縱向就是多個平級的 if 語句的並列 如 if if if 而橫向就是 if 語句中包含if 語句如 if if if 我正好學到這裡剛剛試驗了一下是可以的 以下 但是因為格式的關係else if a 2 b 4 else else return 0 嚴格按照if語句 ...

關於break的用法,關於c語言中的break用法

1 break是一個常用詞,基本意思是突然地施加一個力 壓力或拉力等 使之 破 或 碎 從一個裂紋到七零八落 引申可指事物部分地或全部破壞 瓦解 崩潰。2 break有時只表示 衝破 開創 等過程意義,但更多的是強調了其破壞的物或事物的完整性 統一性或連續性。3 break用作不及物動詞時,可表示物...

C語言中是NULL什麼意思,c語言中null什麼意思

在標頭檔案 中定義的一個常量 null 0 用於指將指標 懸空 不指向任何位置 樓上的指向0記憶體不對的 int p null null是個好東西,給一出生的指標一個安分的家 null不是被定義為0,就是被定義為 void 0,這兩種值幾乎是相同的。當程式中需要一個指標時 儘管編譯程式並不是總能指示...