在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

C語言里函數的定義、子函數的使用及變量的作用域

C語言編程學習基地 ? 來源:C語言編程學習基地 ? 作者:C語言編程學習基地 ? 2022-04-28 11:23 ? 次閱讀

這篇介紹C語言里函數的定義、子函數的使用。接著介紹變量的作用域,定義全局變量、靜態變量、只讀變量、變量初始化等等。

一、函數定義

//定義一個函數int func(int a,int b){  }
<函數的返回值類型> <函數名稱>(函數的形參列表,....){  函數代碼主體部分;}

<函數的返回值類型>: 返回值類型可以是C語言支持任何類型?;緮祿愋汀⒅羔?、結構體、枚舉…

如果函數執行完畢,不需要返回值,可以將函數返回值類型聲明為空類型。Void

函數名稱 :不能與庫函數名稱沖突,命名規則與變量命名規則一樣。

函數的形參列表 :函數在執行行傳入的參數,類型與返回值類型定義方法一樣。

如果有多個形參,可以使用逗號隔開

函數的返回值: 如果函數執行完畢之后需要向調用處返回數據,可以使用return,該語句只能返回一個值。

#include int func(int,int);  //聲明func函數//int func(int a,int b);//聲明func函數
int main(void){  int a;  a=func(12.34,56.78); //形參傳入之后,會轉為整型  printf("a=%d
",a);  return 0;}
//定義一個函數int func(int a,int b){  int c;  c=a+b;  return c; //給調用者返回結果}

二、函數練習作業

(1)編寫一個判斷某一年是否是閏年的函數。(條件: 能整除4且不能整除100 或者能整除400 )

#include int func_year(int year); //聲明函數int main(void){  int year; //c89標準  int err=0;  printf("輸入一個年份:");  scanf("%d",&year);  err=func_year(year);//調用函數  if(err==1)   {    printf("閏年!
");  }  else if(err==0)  {    printf("平年!
");  }  else  {    printf("輸入的年份錯誤!
");  }  return 0;}

(2)該函數由主函數調用,判斷平年和閏年。

/*函數功能: 判斷平年和閏年返回值  : 0表示平年,1表示閏年,負數表示錯誤*/int func_year(int year){  if(year<1900)return -1; //加一個限制條件  if((year%4==0&&year%100!=0)||year%400==0)  {    return 1;  }  return 0;}

(3)輸入一個華氏溫度,輸出攝氏溫度,計算公式為(華氏度-32)×5÷9 要求結果保留兩位小數。

#include float func_temp(float temp); //聲明函數int main(void){  float temp;  printf("輸入一個溫度值:");  scanf("%f",&temp);  printf("temp=%.2f
",func_temp(temp));  return 0;}
/*函數功能: 計算溫度返回值  : 攝氏度*/float func_temp(float temp){  //(華氏度-32)×5÷9  return (temp-32)*5/9.0;}

(4)封裝函數,打印以下圖案:回文三角形,形參可以決定行數。

1

121

12321

1234321

(5)計算百分比與數據自動轉換

#include int main(void){  float data;  data=(10/60.0)*100;  //運算時,需要一個數據是浮點數,運算中才可以使用浮點方式存儲  printf("data=%.0f%%
",data);  return 0;}

(6)函數返回值例子: 限定范圍

#include int func(int a);int main(void){  printf("%d
",func(200));  return 0;}
int func(int a){  return (a==100);  //限定范圍值為0和1}

三、 變量的作用域

3.1 全局變量和局部變量

  const int c;  //定義只讀變量  static int b; //定義靜態變量

說明: 變量定義作用域分為全局變量和局部變量。

1.局部變量和全局變量名稱可以相同。

2.如果局部變量名稱與全局變量名稱相同,優先使用局部變量。

#include void func(int);int data=123; //全局變量(公用變量)
int main(void){  int data=456; //局部變量  printf("data1=%d
",data);  func(666);  return 0;}
void func(int data){  printf("data2=%d
",data);}

3.2 只讀變量

#include void func(int);const int data=888; //只讀變量int main(void){  //data=666; 錯誤的  printf("%d
",data);  return 0;}
void func(int data){  printf("data2=%d
",data);}

3.3 靜態變量

?靜態變量測試#include int func(void);int main(void){  int i,data;  for(i=0;i<5;i++)  {    data=func();  }  printf("data=%d
",data);  return 0;}
int func(void){  //int data=0; //局部變量,生命周期隨著函數調用結束而終止。  static int data=0; //靜態變量,生命周期與main函數一樣。     //static int data=0 只有第一次執行有效  data++; //data=data+1  ,1  return data;}

3.4 靜態全局變量

#include 
//int data;  全局變量,可以在其他.c文件引用static int data=0; //靜態全局變量-----局部變量//靜態全局變量: 表示該data變量不能被其他文件所引用。//防止全局變量,重命名。
int main(void){  return 0;}

3.5 靜態函數

#include static int func(void);  
int main(void){  func();  return 0;}
//定義靜態函數,表示該函數只能在本文件使用。static int func(void){  printf("123
");}

3.6 變量的初始化值

#include static int data1;  int data2;
int main(void){  int data3; //局部變量  static int data4;  printf("data1=%d
",data1); //0  printf("data2=%d
",data2); //0  printf("data3=%d
",data3); //未知值  printf("data4=%d
",data4); //0    int cnt;  //cnt++;  /*  for(i=0;i<5;i++)  {    if(xxxx)data3|=0x1;    data3<<=1;  }*/  return 0;}

-----------------------------------

著作權歸作者所有:來自51CTO博客作者DS小龍哥,原文鏈接:https://blog.51cto.com/u_11822586/5256783

寫在最后:另外,對于準備學習C/C++編程的小伙伴,如果你想更好的提升你的編程核心能力(內功)不妨從現在開始!

整理分享(多年學習的源碼、項目實戰視頻、項目筆記,基礎入門教程

歡迎轉行和學習編程的伙伴,利用更多的資料學習成長比自己琢磨更快哦!

原文標題:C語言干貨:函數知識詳解(變量的作用域,全局變量,靜態變量)

文章出處:【微信公眾號:C語言編程學習基地】歡迎添加關注!文章轉載請注明出處。

審核編輯:湯梓紅
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • C語言
    +關注

    關注

    180

    文章

    7623

    瀏覽量

    139423
  • 函數
    +關注

    關注

    3

    文章

    4361

    瀏覽量

    63604
  • 作用域
    +關注

    關注

    0

    文章

    6

    瀏覽量

    6191

原文標題:C語言干貨:函數知識詳解(變量的作用域,全局變量,靜態變量)

文章出處:【微信號:cyuyanxuexi,微信公眾號:C語言編程學習基地】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    c語言變量作用和存儲類別

    c語言變量作用和存儲類別簡述,很不錯哦。
    發表于 07-14 17:12 ?0次下載

    c語言函數指針定義,指針函數函數指針的區別

     往往,我們一提到指針函數函數指針的時候,就有很多人弄不懂。下面就由小編詳細為大家介紹C語言函數指針,指針
    發表于 11-16 15:18 ?3820次閱讀

    C語言程序設計實用教程之函數詳細介紹和應用

    本文檔的主要內容詳細介紹的是C語言程序設計實用教程之函數詳細介紹和應用內容包括了:1 模塊化程序設計與函數2 函數
    發表于 10-31 18:04 ?2次下載
    <b class='flag-5'>C</b><b class='flag-5'>語言</b>程序設計實用教程之<b class='flag-5'>函數</b>詳細介紹和應用

    C語言實用教程之函數的詳細資料說明

    本文檔詳細介紹的是C語言實用教程之函數的詳細資料說明主要內容包括了:1程序設計的藝術性,2函數定義與使用,3
    發表于 02-26 14:43 ?3次下載
    <b class='flag-5'>C</b><b class='flag-5'>語言</b>實用教程之<b class='flag-5'>函數</b>的詳細資料說明

    C語言函數的實驗詳細資料說明

    實驗目的和要求(1)掌握C語言函數定義方法、函數的聲明及函數的調用方法。(2)掌握
    發表于 12-06 08:00 ?4次下載
    <b class='flag-5'>C</b><b class='flag-5'>語言</b><b class='flag-5'>函數</b>的實驗詳細資料說明

    C語言教程之函數的詳細資料說明

    本文檔的主要內容詳細介紹的是C語言教程之函數的詳細資料說明包括了:1 函數概述 ,2 函 數 定 義 ,3 函數的調用 ,4
    發表于 03-21 15:39 ?9次下載
    <b class='flag-5'>C</b><b class='flag-5'>語言</b>教程之<b class='flag-5'>函數</b>的詳細資料說明

    C語言中局部變量和全局變量

    全局變量也稱為外部變量,它是在函數外部定義變量。它不屬于哪一個函數,它屬于一個源程序文件。其
    的頭像 發表于 10-15 10:48 ?5777次閱讀

    HS26Fxx-C_Demo_Code-中斷函數、中斷子函數定義與使用

    HS26Fxx-C_Demo_Code-中斷函數、中斷子函數定義與使用功能:定時器TC0中斷程序參考void __interrupt[0x08] Interrupt(void)//無
    發表于 12-27 19:25 ?9次下載
    HS26Fxx-<b class='flag-5'>C</b>_Demo_Code-中斷<b class='flag-5'>函數</b>、中斷<b class='flag-5'>子函數</b>的<b class='flag-5'>定義</b>與使用

    C語言變量作用

    函數的形參也是局部變量。全局變量–global variable大括號以外的變量,作用定義
    發表于 01-13 14:58 ?0次下載
    <b class='flag-5'>C</b><b class='flag-5'>語言</b>中<b class='flag-5'>變量</b>的<b class='flag-5'>作用</b><b class='flag-5'>域</b>

    python變量作用

    (Built-in) 內建作用 變量/函數 的查找順序: L – E – G –B 意思是,在局部找不到的,便去局部外的局部作用
    的頭像 發表于 03-03 16:50 ?1738次閱讀

    C語言總結_函數知識

    這篇文章介紹函數定義函數的傳參、函數的返回值、變量作用
    的頭像 發表于 08-14 09:33 ?888次閱讀

    C語言_函數封裝、變量作用

    這篇文章介紹C語言函數封裝以及變量作用、字符串的相關實戰練習。字符串轉整數、整數轉字符串、浮點
    的頭像 發表于 08-14 09:48 ?1376次閱讀

    C語言-函數定義、聲明、傳參

    C語言函數是非常重要的知識點,一個完整的C語言程序就是由主
    的頭像 發表于 08-14 09:57 ?2137次閱讀

    C語言函數調用的形式及過程

    C語言函數調用時的數據傳遞 在調用有參函數時,主調函數和被調函數之間有數據傳遞關系。
    的頭像 發表于 03-10 14:28 ?2089次閱讀

    空閑任務鉤子函數詳解

    的話就什么也不用管,鉤子函數是一個可選功能,可以通過宏定義來選擇使用哪個鉤子函數,可選的鉤子函數如表所示: 鉤子函數的使用方法基本相同,用戶
    的頭像 發表于 07-30 10:57 ?1254次閱讀
    空閑任務鉤<b class='flag-5'>子函數</b>詳解
    主站蜘蛛池模板: 97久久草草超级碰碰碰 | 国产成人综合欧美精品久久 | 开心六月婷婷 | 亚洲射图 | 性欧美videofree视频另类 | 亚洲天天综合网 | baoyu168成人免费视频 | 国产精品资源在线观看 | 欧美一区二区三区视频 | 黄视频免费观看 | 69日本xxxxhd| 男人的天堂免费视频 | 1区2区3区| 成人网久久 | 久久久精品免费观看 | 狠狠狠操 | 色色色色色色网 | 欧美成人3d动漫在线播放网站 | 你懂得在线| 免费在线黄网 | 亚洲射图| 国产在线99| 精品xxxxxbbbb欧美中文 | 你懂的网站在线播放 | 永久免费看 | 黄色顶级视频 | 日本卡一卡2卡3卡4精品卡无人区 | 免费看片免费播放 | 无遮挡很爽很污很黄在线网站 | 美女视频黄a视频免费全过程 | 奇米影视777四色米奇影院 | 四虎一影院区永久精品 | 国产区精品高清在线观看 | 黄色顶级视频 | 深夜视频在线观看免费 | 成年女人免费看一级人体片 | 国产逼逼视频 | 婷婷视频网| 久久精品国产99国产精品免费看 | 久久婷婷是五月综合色狠狠 | 美女扒开尿口给男人桶视频免费 |