首頁 考試吧論壇 Exam8視線 考試商城 網絡課程 模擬考試 考友錄 實用文檔 求職招聘 論文下載
2011中考 | 2011高考 | 2012考研 | 考研培訓 | 在職研 | 自學考試 | 成人高考 | 法律碩士 | MBA考試
MPA考試 | 中科院
四六級 | 職稱英語 | 商務英語 | 公共英語 | 托福 | 雅思 | 專四專八 | 口譯筆譯 | 博思 | GRE GMAT
新概念英語 | 成人英語三級 | 申碩英語 | 攻碩英語 | 職稱日語 | 日語學習 | 法語 | 德語 | 韓語
計算機等級考試 | 軟件水平考試 | 職稱計算機 | 微軟認證 | 思科認證 | Oracle認證 | Linux認證
華為認證 | Java認證
公務員 | 報關員 | 銀行從業(yè)資格 | 證券從業(yè)資格 | 期貨從業(yè)資格 | 司法考試 | 法律顧問 | 導游資格
報檢員 | 教師資格 | 社會工作者 | 外銷員 | 國際商務師 | 跟單員 | 單證員 | 物流師 | 價格鑒證師
人力資源 | 管理咨詢師考試 | 秘書資格 | 心理咨詢師考試 | 出版專業(yè)資格 | 廣告師職業(yè)水平
駕駛員 | 網絡編輯
衛(wèi)生資格 | 執(zhí)業(yè)醫(yī)師 | 執(zhí)業(yè)藥師 | 執(zhí)業(yè)護士
會計從業(yè)資格考試會計證) | 經濟師 | 會計職稱 | 注冊會計師 | 審計師 | 注冊稅務師
注冊資產評估師 | 高級會計師 | ACCA | 統(tǒng)計師 | 精算師 | 理財規(guī)劃師 | 國際內審師
一級建造師 | 二級建造師 | 造價工程師 | 造價員 | 咨詢工程師 | 監(jiān)理工程師 | 安全工程師
質量工程師 | 物業(yè)管理師 | 招標師 | 結構工程師 | 建筑師 | 房地產估價師 | 土地估價師 | 巖土師
設備監(jiān)理師 | 房地產經紀人 | 投資項目管理師 | 土地登記代理人 | 環(huán)境影響評價師 | 環(huán)保工程師
城市規(guī)劃師 | 公路監(jiān)理師 | 公路造價師 | 安全評價師 | 電氣工程師 | 注冊測繪師 | 注冊計量師
繽紛校園 | 實用文檔 | 英語學習 | 作文大全 | 求職招聘 | 論文下載 | 訪談 | 游戲
您現(xiàn)在的位置: 考試吧(Exam8.com) > 計算機等級考試 > 計算機二級 > C語言 > 復習資料 > 正文

二級C輔導教程及考點分析:第五章 函數(shù)

 

    這種格式由于在括號中沒有任何參數(shù)信息, 因此不便于編譯系統(tǒng)進行錯誤檢查,易于發(fā)生錯誤。另一種為現(xiàn)代格式,其一般形式為: 
    類型說明符 被調函數(shù)名(類型 形參,類型 形參…); 
    或為:
    類型說明符 被調函數(shù)名(類型,類型…); 
    現(xiàn)代格式的括號內給出了形參的類型和形參名, 或只給出形參類型。這便于編譯系統(tǒng)進行檢錯,以防止可能出現(xiàn)的錯誤。例5.1 main函數(shù)中對max函數(shù)的說明若
    用傳統(tǒng)格式可寫為:
    int max();
    用現(xiàn)代格式可寫為:
    int max(int a,int b);
    或寫為:
    int max(int,int);
    C語言中又規(guī)定在以下幾種情況時可以省去主調函數(shù)中對被調函數(shù)的函數(shù)說明。
    1. 如果被調函數(shù)的返回值是整型或字符型時, 可以不對被調函數(shù)作說明,而直接調用。這時系統(tǒng)將自動對被調函數(shù)返回值按整型處理。例5.3的主函數(shù)中未對函數(shù)s作說明而直接調用即屬此種情形。

    2. 當被調函數(shù)的函數(shù)定義出現(xiàn)在主調函數(shù)之前時, 在主調函數(shù)中也可以不對被調函數(shù)再作說明而直接調用。例如例5.1中, 函數(shù)max的定義放在main 函數(shù)之前,因此可在main函數(shù)中省去對 max函數(shù)的函數(shù)說明int max(int a,int b)。

    3. 如在所有函數(shù)定義之前, 在函數(shù)外預先說明了各個函數(shù)的類型,則在以后的各主調函數(shù)中,可不再對被調函數(shù)作說明。例如:
    char str(int a);
    float f(float b);
    main()
    {
    ……
    }
    char str(int a)
    {
    ……
    }
    float f(float b)
    {
    ……
    }
    其中第一,二行對str函數(shù)和f函數(shù)預先作了說明。 因此在以后各函數(shù)中無須對str和f函數(shù)再作說明就可直接調用。

    4. 對庫函數(shù)的調用不需要再作說明, 但必須把該函數(shù)的頭文件用include命令包含在源文件前部。數(shù)組作為函數(shù)參數(shù)數(shù)組可以作為函數(shù)的參數(shù)使用,進行數(shù)據(jù)傳送。 數(shù)組用作函數(shù)參數(shù)有兩種形式,一種是把數(shù)組元素(下標變量)作為實參使用; 另一種是把數(shù)組名作為函數(shù)的形參和實參使用。一、數(shù)組元素作函數(shù)實參數(shù)組元素就是下標變量,它與普通變量并無區(qū)別。 因此它作為函數(shù)實參使用與普通變量是完全相同的,在發(fā)生函數(shù)調用時, 把作為實參的數(shù)組元素的值傳送給形參,實現(xiàn)單向的值傳送。例5.4說明了這種情況。[例5.4]判別一個整數(shù)數(shù)組中各元素的值,若大于0 則輸出該值,若小于等于0則輸出0值。編程如下:
    void nzp(int v)
    {
    if(v>0)
    printf("%d ",v);
    else
    printf("%d ",0);
    }
    main()
    {
    int a[5],i;
    printf("input 5 numbers\n");
    for(i=0;i<5;i++)
    {
    scanf("%d",&a[i]);
    nzp(a[i]);
    }
    }void nzp(int v)
    { ……
    }
    main()
    {
    int a[5],i;
    printf("input 5 numbers\n");
    for(i=0;i<5;i++)
    { scanf("%d",&a[i]);
    nzp(a[i]);
    }
    } 
    本程序中首先定義一個無返回值函數(shù)nzp,并說明其形參v 為整型變量。在函數(shù)體中根據(jù)v值輸出相應的結果。在main函數(shù)中用一個for 語句輸入數(shù)組各元素, 每輸入一個就以該元素作實參調用一次nzp函數(shù),即把a[i]的值傳送給形參v,供nzp函數(shù)使用。

上一頁  1 2 3 4 5 6 7 8 9 10  ... 下一頁  >> 
文章搜索
版權聲明:如果計算機等級考試網所轉載內容不慎侵犯了您的權益,請與我們聯(lián)系800@exam8.com,我們將會及時處理。如轉載本計算機等級考試網內容,請注明出處。