![C語言全國計(jì)算機(jī)二級等級考試教程第七章函數(shù)(章節(jié)帶習(xí)題)_第1頁](http://file3.renrendoc.com/fileroot_temp3/2021-12/26/00b01d60-69d3-46f8-bec5-a5507deb8442/00b01d60-69d3-46f8-bec5-a5507deb84421.gif)
![C語言全國計(jì)算機(jī)二級等級考試教程第七章函數(shù)(章節(jié)帶習(xí)題)_第2頁](http://file3.renrendoc.com/fileroot_temp3/2021-12/26/00b01d60-69d3-46f8-bec5-a5507deb8442/00b01d60-69d3-46f8-bec5-a5507deb84422.gif)
![C語言全國計(jì)算機(jī)二級等級考試教程第七章函數(shù)(章節(jié)帶習(xí)題)_第3頁](http://file3.renrendoc.com/fileroot_temp3/2021-12/26/00b01d60-69d3-46f8-bec5-a5507deb8442/00b01d60-69d3-46f8-bec5-a5507deb84423.gif)
![C語言全國計(jì)算機(jī)二級等級考試教程第七章函數(shù)(章節(jié)帶習(xí)題)_第4頁](http://file3.renrendoc.com/fileroot_temp3/2021-12/26/00b01d60-69d3-46f8-bec5-a5507deb8442/00b01d60-69d3-46f8-bec5-a5507deb84424.gif)
![C語言全國計(jì)算機(jī)二級等級考試教程第七章函數(shù)(章節(jié)帶習(xí)題)_第5頁](http://file3.renrendoc.com/fileroot_temp3/2021-12/26/00b01d60-69d3-46f8-bec5-a5507deb8442/00b01d60-69d3-46f8-bec5-a5507deb84425.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、2021/8/61第第7章章 函數(shù)函數(shù)v7.1 庫函數(shù)庫函數(shù)v7.2 函數(shù)的定義和返回值函數(shù)的定義和返回值v7.3 函數(shù)的調(diào)用函數(shù)的調(diào)用v7.4 函數(shù)的說明函數(shù)的說明v7.5 調(diào)用函數(shù)和被調(diào)用函數(shù)之間的數(shù)據(jù)傳遞調(diào)用函數(shù)和被調(diào)用函數(shù)之間的數(shù)據(jù)傳遞v7.6 程序舉例程序舉例2021/8/627.1 庫函數(shù)庫函數(shù)庫函數(shù)庫函數(shù)是由是由C語言提供的,不需要另外編寫。語言提供的,不需要另外編寫。使用庫函數(shù)時(shí),在調(diào)用之前必須使用使用庫函數(shù)時(shí),在調(diào)用之前必須使用include包含對應(yīng)的包含對應(yīng)的頭文件頭文件。 輸入輸出函數(shù)輸入輸出函數(shù) 數(shù)學(xué)函數(shù)數(shù)學(xué)函數(shù) 字符函數(shù)字符函數(shù) 字符串函數(shù)字符串函數(shù)#include
2、“stdio.h” #include “math.h”#include “ctype.h”#include “string.h”庫函數(shù)的調(diào)用有兩種出現(xiàn)形式:庫函數(shù)的調(diào)用有兩種出現(xiàn)形式: 出現(xiàn)在表達(dá)式中出現(xiàn)在表達(dá)式中 作為獨(dú)立的語句出現(xiàn)作為獨(dú)立的語句出現(xiàn)y=pow(x,2.5)+1.3;printf(“*n”);2021/8/637.2 函數(shù)的定義和返回值函數(shù)的定義和返回值C語言雖然提供了豐富的庫函數(shù),但這些函數(shù)的功能已經(jīng)被開發(fā)人員編寫好了,語言雖然提供了豐富的庫函數(shù),但這些函數(shù)的功能已經(jīng)被開發(fā)人員編寫好了,直接來調(diào)用就可以了,這一節(jié)我們將學(xué)習(xí)自己來編寫函數(shù),自己編寫的函數(shù)直接來調(diào)用就可以了,這
3、一節(jié)我們將學(xué)習(xí)自己來編寫函數(shù),自己編寫的函數(shù)成為成為用戶自定義函數(shù)用戶自定義函數(shù)。函數(shù)定義的一般形式如下:函數(shù)定義的一般形式如下:函數(shù)返回值的類型名函數(shù)返回值的類型名 函數(shù)名函數(shù)名(類型名類型名 形式參數(shù)形式參數(shù)1,類型名,類型名 形式參數(shù)形式參數(shù)2,. ) 說明部分說明部分 語句部分語句部分標(biāo)識符標(biāo)識符變量名變量名函數(shù)的首部函數(shù)的首部函數(shù)體函數(shù)體該函數(shù)的返回值由它決定,省該函數(shù)的返回值由它決定,省略時(shí)默認(rèn)為略時(shí)默認(rèn)為int類型類型例如:例如:double add(double a,double b) double s; s=a+b; return s; 退出調(diào)用函數(shù),并退出調(diào)用函數(shù),并帶回返
4、回值帶回返回值return (s);注意注意此函數(shù)不能執(zhí)行,此函數(shù)不能執(zhí)行,只有必須在主函數(shù)中調(diào)用它才行。只有必須在主函數(shù)中調(diào)用它才行。2021/8/647.3 函數(shù)的調(diào)用函數(shù)的調(diào)用調(diào)用形式:調(diào)用形式:函數(shù)名函數(shù)名(實(shí)際參數(shù)實(shí)際參數(shù))實(shí)際參數(shù)的個(gè)數(shù)和類型必須于形實(shí)際參數(shù)的個(gè)數(shù)和類型必須于形式參數(shù)一致式參數(shù)一致.在主函數(shù)中調(diào)用用戶編寫的函數(shù)有兩種方式:在主函數(shù)中調(diào)用用戶編寫的函數(shù)有兩種方式: 作為表達(dá)式出現(xiàn)在允許表達(dá)式出現(xiàn)的任何地方。作為表達(dá)式出現(xiàn)在允許表達(dá)式出現(xiàn)的任何地方。y=add(3.0,4.0);if(add(x,y)0) 某語句;某語句; 作為獨(dú)立的語句出現(xiàn)。作為獨(dú)立的語句出現(xiàn)。add
5、(x,y);2021/8/657.3 函數(shù)的調(diào)用函數(shù)的調(diào)用#include main()double y,p,q; scanf(“%lf%lf”,&p,&q); y=add(p,q); printf(“%f”,y);pqydouble add(double a,double b)double s; s=a+b; return s; 調(diào)用剛才遍好的用戶自定義函數(shù)調(diào)用剛才遍好的用戶自定義函數(shù)調(diào)用時(shí)函數(shù)名要相同,并且實(shí)際參數(shù)的調(diào)用時(shí)函數(shù)名要相同,并且實(shí)際參數(shù)的個(gè)數(shù)和類型必須于形式參數(shù)一致個(gè)數(shù)和類型必須于形式參數(shù)一致變量名可以不同變量名可以不同sab傳遞傳遞傳遞傳遞9.0退出函數(shù),將退
6、出函數(shù),將s的值作為該函數(shù)的的值作為該函數(shù)的返回值,所以該函數(shù)的值為返回值,所以該函數(shù)的值為9.0。當(dāng)退出用戶自定義函數(shù)時(shí),該函數(shù)當(dāng)退出用戶自定義函數(shù)時(shí),該函數(shù)中的變量全部釋放。中的變量全部釋放。9.09.000000用戶在編寫完整的程序時(shí),用戶自定義函數(shù)可以放在主用戶在編寫完整的程序時(shí),用戶自定義函數(shù)可以放在主函數(shù)的前面,也可以放在主函數(shù)的后面,不過要是放在函數(shù)的前面,也可以放在主函數(shù)的后面,不過要是放在主函數(shù)的后面,則要進(jìn)行主函數(shù)的后面,則要進(jìn)行函數(shù)說明函數(shù)說明。2021/8/667.4 函數(shù)的說明函數(shù)的說明#include double add(double a,double b)dou
7、ble s; s=a+b; return s; main()double y,p,q; scanf(“%lf%lf”,&p,&q); y=add(p,q); printf(“%f”,y);#include main()double y,p,q; scanf(“%lf%lf”,&p,&q); y=add(p,q); printf(“%f”,y);double add(double a,double b)double s; s=a+b; return s; 注意注意用戶自定義函數(shù)無論放在主函數(shù)的前面還是后面都沒有關(guān)系,因?yàn)橛脩糇远x函數(shù)無論放在主函數(shù)的前面還是后面都
8、沒有關(guān)系,因?yàn)槌绦蚨际窍葟某绦蚨际窍葟膍ain函數(shù)開始執(zhí)行。不過當(dāng)用戶自定義函數(shù)出現(xiàn)在函數(shù)開始執(zhí)行。不過當(dāng)用戶自定義函數(shù)出現(xiàn)在主函數(shù)之后,一定要對該函數(shù)進(jìn)行主函數(shù)之后,一定要對該函數(shù)進(jìn)行函數(shù)說明函數(shù)說明(函數(shù)返回值的類型為函數(shù)返回值的類型為int或或char除外除外)。函數(shù)說明一般都是在程序的開頭進(jìn)行。函數(shù)說明一般都是在程序的開頭進(jìn)行。函數(shù)說明的一般形式:函數(shù)說明的一般形式:類型名類型名 函數(shù)名函數(shù)名(參數(shù)類型參數(shù)類型1,參數(shù)類型,參數(shù)類型2,.);類型名類型名 函數(shù)名函數(shù)名(參數(shù)類型參數(shù)類型1 參數(shù)名參數(shù)名1,參數(shù)類型,參數(shù)類型2 參數(shù)名參數(shù)名2,.);double add(double,d
9、ouble);double add(double x,double y);#include double add(double a,double b);main()double y,p,q; scanf(“%lf%lf”,&p,&q); y=add(p,q); printf(“%f”,y);double add(double a,double b)double s; s=a+b; return s; 2021/8/677.5 調(diào)用函數(shù)和被調(diào)用函數(shù)之間的數(shù)據(jù)傳遞調(diào)用函數(shù)和被調(diào)用函數(shù)之間的數(shù)據(jù)傳遞例例7.3 以下程序試圖通過調(diào)用以下程序試圖通過調(diào)用swap函數(shù),把主函數(shù)中變量函數(shù),
10、把主函數(shù)中變量x和和y中的數(shù)據(jù)進(jìn)行交換。中的數(shù)據(jù)進(jìn)行交換。請觀察程序的輸出。請觀察程序的輸出。#include void swap(int,int);main()int x=10,y=20; printf(1)x=%d y=%dn,x,y); swap(x,y); printf(4)x=%d y=%dn,x,y);void swap(int a,int b)int t; printf(2)a=%d b=%dn,a,b); t=a;a=b;b=t; printf(3)a=%d b=%dn,a,b);/*函數(shù)說明語句函數(shù)說明語句*/10 x20y(1)x=10 y=20調(diào)用調(diào)用傳遞傳遞ab1020
11、傳遞傳遞傳遞傳遞t(2)a=10 b=202010(3)a=20 b=10退出該函數(shù),返回到它的調(diào)用處,退出該函數(shù),返回到它的調(diào)用處,該函數(shù)無返回值,因?yàn)樵摵瘮?shù)為該函數(shù)無返回值,因?yàn)樵摵瘮?shù)為void類型,此時(shí)該函數(shù)中的變量全類型,此時(shí)該函數(shù)中的變量全部釋放。部釋放。(4)x=10 y=202021/8/68習(xí)題習(xí)題一一.選擇題選擇題7.1 以下敘述中正確的是以下敘述中正確的是A C語言程序總是從第一個(gè)定義的函數(shù)開始執(zhí)行語言程序總是從第一個(gè)定義的函數(shù)開始執(zhí)行B 在在C語言程序中語言程序中,要調(diào)用的函數(shù)必須在要調(diào)用的函數(shù)必須在main()函數(shù)中定義函數(shù)中定義C C語言程序總是從語言程序總是從mai
12、n()函數(shù)開始執(zhí)行函數(shù)開始執(zhí)行D C語言程序中的語言程序中的main()函數(shù)必須放在程序的開始部分函數(shù)必須放在程序的開始部分7.2 已定義了以下函數(shù)已定義了以下函數(shù)fff( float x ) printf(“%dn”,x*x); 該函數(shù)的類型是該函數(shù)的類型是A 與參數(shù)與參數(shù)x的類型相同的類型相同 B void C int類型類型 D 無法確定無法確定7.3 有函數(shù)調(diào)用語句有函數(shù)調(diào)用語句:func( (exp1, exp2), (exp3, exp4, exp5);,此函數(shù)調(diào)用語句含此函數(shù)調(diào)用語句含有的實(shí)參個(gè)數(shù)是有的實(shí)參個(gè)數(shù)是A 1 B 2 C 4 D 5CCB2021/8/69習(xí)題7.4 有
13、以下程序:int func(int a,int b)int c; c=a+b;return c;main()int x=6,y=7,z=8,r; r=func( (x- -,y+,x+y), z- - ); printf(%dn,r);程序的輸出結(jié)果是程序的輸出結(jié)果是A 11 B 20 C 21 D 317.5 有以下程序:#include int f(int,int);main()int i=2,p; p=f(i,i+1);printf(%dn,p);int f(int a,int b)int c; c=a; if(ab) c=1; else if(a=b) c=0; else c=-1;
14、return (c);程序的輸出結(jié)果是程序的輸出結(jié)果是A -1 B 0 C 1 D 2CA2021/8/610習(xí)題7.6 有以下程序:#include int fun(int a,int b,int c)c=a*b;main()int w; fun(2,3,w); printf(%dn,w);程序的程序的 輸出結(jié)果是輸出結(jié)果是A 0 B 1 C 6 D 無定值無定值7.7 有以下程序:#include double f(int n)int i; double s; s=1.0; for(i=1;i=n;i+) s+=1.0/i; return s;main()int i,m=3; double
15、 a=0.0; for(i=0;im;i+) a+=f(i); printf(%fn,a);程序的輸出結(jié)果是程序的輸出結(jié)果是A 5.500000 B 3.000000C 4.000000 D 8.25DA2021/8/611習(xí)題二.填空題7.8 以下程序的輸出結(jié)果是_.#include unsigned fun6(unsigned num)unsigned k=1; do k*=num%10; num/=10; while(num); return k;main()unsigned n=26; printf(%dn,fun6(n);7.9 以下程序的輸出結(jié)果是_.#include double sub(double x,double y,double z)y-=1.0;z=z+x;return z;main()double a=2.5,b=9.0; printf(%fn,su
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年專家顧問聘用合同范文
- 2025年中醫(yī)藥大數(shù)據(jù)項(xiàng)目提案報(bào)告模板
- 2025年懷化市住宅租賃合同示范
- 2025年植樹用地租賃合同模板
- 2025年電熱設(shè)備:電熱管項(xiàng)目立項(xiàng)申請報(bào)告范文
- 2025年產(chǎn)權(quán)交易所項(xiàng)目轉(zhuǎn)讓服務(wù)協(xié)議
- 2025年中等教育助學(xué)貸款合同范本
- 2025年衛(wèi)生用品采購合同
- 2025年天然級復(fù)盆子酮項(xiàng)目申請報(bào)告模稿
- 2025年企業(yè)信息技術(shù)保密協(xié)議管理
- 2025年上半年中煤科工集團(tuán)北京華宇工程限公司中層干部公開招聘易考易錯(cuò)模擬試題(共500題)試卷后附參考答案
- 會議室墻面隔音板施工方案
- 特朗普就職演說全文與核心要點(diǎn)
- 北京市海淀區(qū)2024-2025學(xué)年五年級上冊語文期末試卷(有答案)
- 2024-2024年高考全國卷英語語法填空
- 辛棄疾生平簡介(課堂PPT)
- 人教版七年級英語下冊全冊英語單詞默寫直接打印
- 公共衛(wèi)生服務(wù)考核評分標(biāo)準(zhǔn)(新)
- 《乒乓球》體育課教案(全)
- 阻變隨機(jī)存儲器(RRAM)綜述(自己整理)
- 提高住房公積服務(wù)質(zhì)量打造住房公積金服務(wù)品牌
評論
0/150
提交評論