C語言中return 0與return(z)語句的區别
用一個函數來實現求兩個整數中的較大者。在主函數中調用此函數并顯示結果。
# include < stdio . h >
int main (){
int max ( int x int y );
int a , b , C ;
scanf ("% d ,% d ",& a ,&Ь);
c= max ( a ,b );
printf (" max =% d \ n ", c );
return 0;
//求兩個整數中的較大者的 max 函數(調用作為主函數一個子函數)
int max ( int x , int y )
int z ;
if ( x > y ) z=x;
else z=y ;
return ( z );
運行結果:
8,5
max=8
程序用 max ( a , b )調用 max 函數。在調用時将 a 和 b 作為 max 函數的參數(稱為實際參數,調用時的賦值參數)的值分别傳送給 max 函數中的參數 x 和 y (稱為形式參數),然後執行 max 函數的函數體,使 max 函數中的變量 z 得到一個值(即 x 和 y 中大者的值), return ( z )的作用是把 z 的值作為 max 函數值帶回到程序第“c=z”的右側(主函數調用 max 函數的位置),取代 max ( a , b ),然後把這個值賦給變量 c 。 在一個函數内部可以直接賦值,c=z,但是c是主函數變量,z是調用函數的變量,直接賦值行不通,不要以為在 max 函數中求出最大值 z 後就會自動地作為函數值返回調用處,必須用 return 語句指定将哪個值作為調用函數返回值,供主函數使用。
通過調用函數把z變量為指定該函數返回值return(z),這樣才可以賦值給主函數一個變量,因此不同函數間(跨函數之間〉必須return(Z)語言來指定變量來賦值,直接賦值僅限一個函數的内部。
程序中main()及max()函數都有 return 語句,均定義為整型,都需要用 return 語句為函數指定返回值。但是 main主函數中的 return 語句指定的返回值一般為0,結束函數的運行。而 max 調用函數的返回值是 max 函數中求出的兩數中的最大值 Z ,隻有通過 return 語句才能把求出的 z 值作為調用函數的值并返回調用它的 main 函數中,并把此值賦給變量 c 。隻有這種賦值才用到return(Z)語句。一般情況均用return 0語句,也不是什麼情況都用return 0語句來結束函數正确執行過程。
c語言中,return 0什麼時候不用加該語句?
函數不返回的情況下無須寫出return語句,例如無限循環、調用不返回的函數(exit語句)等函數返回。
返回類型不是int的情況下,若返回類型是void,則沒有寫出return的必要性,可在需要提前返回的情況下寫出return來進行返回操作。
c語言return 0語句
scanf 和 printf 都是 C 的标準輸入輸出函數。scanf 函數:輸入變量 a 和 b 的值。 scanf 後面圓括号中包括兩部分内容。一是雙引号中的内容,指定輸入的數據按什麼格式輸入。“% d ”的含義是“以十進制整數形式”。二是輸入的數據放入各變量對應地址處,相當賦給各個變量。 scanf 函數中指定的是實際參數 a 和 b ,在 a 和 b 的前面各有一個&,“&”表示地址符,& a 的含義是“變量 a 的地址”,&b是“變量 b 的地址”。執行 scanf 函數,從鍵盤輸入兩個整數,放到變量 a 和 b 的地址,相當分别賦給變量 a 和 b 。
用printf來表示輸出結果,在執行 printf 函數時,對雙引号括起來的 max =("% d\n",c)将 max =原樣輸出,% d 由變量 c 的值取代, \n 的作用是換行,表示光标移至下一行。
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!