版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
C語言程序設(shè)計(jì)
CLanguageProgrammingC語言程序設(shè)計(jì)課程概況英文名:CLanguageProgramming開課單位:計(jì)算機(jī)學(xué)院計(jì)算機(jī)基礎(chǔ)課部課程編碼:103001學(xué)時(shí):64學(xué)時(shí),其中授課40學(xué)時(shí),上機(jī)+機(jī)考24學(xué)時(shí)。學(xué)分:4學(xué)分授課對(duì)象:管理學(xué)院05信管、05電商班教材:《C及C++程序設(shè)計(jì)》鈕焱、許新民主編科學(xué)出版社實(shí)驗(yàn)指導(dǎo)書:《C及C++程序設(shè)計(jì)實(shí)驗(yàn)教程》徐振平、李振立主編科學(xué)出版社教學(xué)參考書:《C程序設(shè)計(jì)》譚浩強(qiáng)主編清華大學(xué)出版社課程的重點(diǎn)與難點(diǎn)1、數(shù)據(jù)類型、數(shù)據(jù)的存儲(chǔ),數(shù)據(jù)的輸入輸出格式。先掌握常用數(shù)據(jù)類型;2、常量、符號(hào)常量、變量的表示與定義;運(yùn)算符及表達(dá)式,包括算術(shù)運(yùn)算、賦值運(yùn)算、關(guān)系運(yùn)算、邏輯運(yùn)算、逗號(hào)運(yùn)算、強(qiáng)制類型運(yùn)算、條件,求字節(jié)運(yùn)算、位運(yùn)算等運(yùn)算符的運(yùn)算級(jí)別、結(jié)合原則。3、程序的三種基本結(jié)構(gòu):順序結(jié)構(gòu)、分支選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu);算法分析和編程方法;4、函數(shù)定義、函數(shù)調(diào)用、函數(shù)聲明、參數(shù)傳遞,值傳送與地址傳送,函數(shù)的嵌套調(diào)用與遞歸調(diào)用,局部變量與全局變量,變量的存儲(chǔ)類別與作用域等。5、一維數(shù)組、二維數(shù)組、字符數(shù)組與字符串,數(shù)組作為函數(shù)的參數(shù),數(shù)組與指針。課程的重點(diǎn)與難點(diǎn)6、指針與地址,變量的指針和指向變量的指針變量,數(shù)組的指針與指向數(shù)組的指針變量,字符串的指針與指向字符串的指針變量,指針與函數(shù),指針數(shù)組,指針的指針。7、結(jié)構(gòu)體與共用體類型的說明、結(jié)構(gòu)體和共用體變量的定義及初始化方法,類型定義typedef的作用;結(jié)構(gòu)體與共用體變量成員的引用方法;數(shù)組、結(jié)構(gòu)體、共用體等構(gòu)造類型數(shù)據(jù)的使用方法;存儲(chǔ)動(dòng)態(tài)分配和釋放;鏈表的基本概念和基本操作。8、文件類型指針,文件的打開與關(guān)閉,文件的讀寫,文件的基本處理函數(shù)。第一章程序設(shè)計(jì)概論本章主要介紹程序設(shè)計(jì)基本技術(shù)及C語言一、程序設(shè)計(jì)語言二、程序設(shè)計(jì)的基本過程三、算法及算法描述四、結(jié)構(gòu)化程序設(shè)計(jì)五、數(shù)制與編碼六、C語言的起源及其特點(diǎn)七、C語言程序的基本構(gòu)架及執(zhí)行過程八、C語言的基本字符集和保留字(關(guān)鍵字)九、C語言的上機(jī)環(huán)境簡介一、程序設(shè)計(jì)語言1、程序:指處理事情的先后次序。在計(jì)算機(jī)語言中,程序定義為完成特定任務(wù)的計(jì)算機(jī)指令的集合。2、程序類型:原程序:用戶編寫的程序稱為源程序。目標(biāo)程序:源程序通過翻譯形成目標(biāo)程序(.OBJ文件)。運(yùn)行程序:將目標(biāo)程序與函數(shù)庫連接后,形成運(yùn)行程序(.EXE文件)。程序設(shè)計(jì):指用戶通過編寫源程序,翻譯源程序?yàn)槟繕?biāo)程序,連接目標(biāo)程序與函數(shù)庫,形成運(yùn)行程序并整理設(shè)計(jì)文檔的全過程。計(jì)算機(jī)指令:是指揮計(jì)算機(jī)完成某一操作的命令,它由操作碼和操作數(shù)組成。計(jì)算機(jī)指令的執(zhí)行過程可分為4個(gè)基本操作:取指令、分析指令、執(zhí)行指令、停止操作。一、程序設(shè)計(jì)語言3、程序設(shè)計(jì)語言:是計(jì)算機(jī)能夠接受,能夠理解的全部指令的集合。分為機(jī)器語言、匯編語言、高級(jí)語言、專用語言(指非過程化的高級(jí)語言)和面向?qū)ο蟪绦蛟O(shè)計(jì)語言等幾類。機(jī)器語言:是機(jī)器指令的集合,用機(jī)器語言編寫的程序計(jì)算機(jī)能夠直接執(zhí)行,執(zhí)行速度快,效率高。它的缺點(diǎn)是可讀性差,難于編程,容易出錯(cuò),程序的檢查和調(diào)試都很困難。機(jī)器指令的操作碼和操作數(shù)都是由“0”、“1”二進(jìn)制代碼組成的序列。匯編語言:是一種用助記符表示的程序設(shè)計(jì)語言。用戶編寫匯編語言源程序,由匯編程序?qū)υ闯绦蜻M(jìn)行匯編,翻譯成目標(biāo)程序。機(jī)器語言和匯編語言都屬于低級(jí)語言,都是面向機(jī)器的語言。高級(jí)語言:是接近于自然語言或數(shù)學(xué)語言的程序設(shè)計(jì)語言。它徹底擺脫了依賴于機(jī)器硬件的指令系統(tǒng),使用自然語言中的英語單詞和數(shù)字符號(hào)編寫程序,它有專門的詞匯規(guī)則、語法規(guī)則,是面向應(yīng)用的計(jì)算機(jī)語言。二、程序設(shè)計(jì)過程1、確定問題要求2、建立數(shù)學(xué)模型3、算法設(shè)計(jì)4、編寫源程序5、編譯調(diào)試程序6、運(yùn)行程序7、分析輸出結(jié)果8、整理文檔三、算法及算法描述1、算法:是為解決某一特定問題而進(jìn)行一步一步操作過程的精確描述,是有限步、可執(zhí)行、有確定結(jié)果的操作序列。2、算法的特征:(1)有窮性:每一個(gè)算法分成有限個(gè)操作步驟,每一步在有限的時(shí)間內(nèi)完成。(2)確定性:算法的每一步都有明確的含義,不含歧義,每一步命令只能產(chǎn)生唯一的一組動(dòng)作。(3)有效性:算法的每一步都能有效地執(zhí)行,并輸出確定的結(jié)果。只要有一個(gè)不可執(zhí)行的操作,該算法無效。(4)有零個(gè)或多個(gè)輸入:可以沒有輸入,有一個(gè)輸入,也可以有多個(gè)輸入。(5)有一個(gè)或多個(gè)輸出:至少有一個(gè)輸出,沒有輸出的算法是沒有意義的。三、算法及算法描述3、三種基本結(jié)構(gòu)(1)順序結(jié)構(gòu):是最基本、最簡單的程序結(jié)構(gòu),在此結(jié)構(gòu)內(nèi)各語句塊是按照它們出現(xiàn)的先后次序依次執(zhí)行的。(2)分支選擇結(jié)構(gòu):首先根據(jù)給定的條件判斷條件是否為真,條件為真,選擇滿足條件的路徑(語句塊)執(zhí)行,條件為假,選擇不滿足條件的路徑(語句塊)執(zhí)行。(3)循環(huán)結(jié)構(gòu):是一種重復(fù)處理的程序結(jié)構(gòu)。當(dāng)滿足(或不滿足)某個(gè)指定的條件時(shí)反復(fù)執(zhí)行語句塊(循環(huán)體),否則跳出循環(huán),執(zhí)行循環(huán)體外的下一條語句。三、算法及算法描述4、算法的描述方法(1)自然語言:指人們?nèi)粘J褂玫恼Z言加以簡化來描述算法,自然語言通俗易懂,人們易于接受,但自然語言描述冗長、不嚴(yán)謹(jǐn),有時(shí)有很大的隨意性和歧義性。(2)傳統(tǒng)流程圖:是用不同幾何形狀的線框、流線和文字說明來描述算法。傳統(tǒng)流程圖的常用符號(hào)及其意義見表1.1所示。(3)N-S流程圖:又稱結(jié)構(gòu)化流程圖,N-S流程圖由一系列矩形框順序排列而成,各個(gè)矩形框只能順序執(zhí)行,每一個(gè)矩形框表示一個(gè)基本結(jié)構(gòu)。矩形框內(nèi)的分割線將矩形框分割成不同的部分,形成三種基本結(jié)構(gòu):順序結(jié)構(gòu)、分支結(jié)構(gòu)、循環(huán)結(jié)構(gòu),表1.2所示為N-S流程圖的基本結(jié)構(gòu)框。(4)偽代碼:是一種過程設(shè)計(jì)語言(PDL),它沒有嚴(yán)格的語法規(guī)則,形式接近高級(jí)語言,用類似于PASCAL語言或C語言描述算法。三、算法及算法描述三、算法及算法描述三、算法及算法描述四、結(jié)構(gòu)化程序設(shè)計(jì)1、結(jié)構(gòu)化程序的基本特點(diǎn):(1)只有一個(gè)入口。(2)只有一個(gè)出口。(3)每一個(gè)處理框都有一條從入口到出口的路徑通過(4)不包含死循環(huán)。2、程序結(jié)構(gòu):使用單一入口和單一出口的三種基本結(jié)構(gòu)即順序結(jié)構(gòu)、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)組成程序的算法。3、程序設(shè)計(jì)方法:編寫程序采用工程化、規(guī)范化、模塊化、結(jié)構(gòu)化的設(shè)計(jì)方法,其設(shè)計(jì)思想是“自頂向下,逐步求精”。4、完成編程后,應(yīng)該“自底向上,逐步求證”,檢查每條語句是否正確,檢查每個(gè)程序結(jié)構(gòu)的邏輯是否正確,檢查每個(gè)模塊的功能是否正確,直到檢查整個(gè)程序是否達(dá)到問題的要求,通過編輯、編譯、連接、運(yùn)行、調(diào)試檢查程序是否達(dá)到精度要求。五、數(shù)制與編碼(略)1、十進(jìn)制數(shù)的再認(rèn)識(shí)2、二進(jìn)制3、八進(jìn)制4、十六進(jìn)制5、二進(jìn)制、八進(jìn)制、十六進(jìn)制之間的轉(zhuǎn)換6、二進(jìn)制、八進(jìn)制、十六進(jìn)制轉(zhuǎn)換為十進(jìn)制7、十進(jìn)制轉(zhuǎn)換為二進(jìn)制、八進(jìn)制、十六進(jìn)制8、二進(jìn)制數(shù)的算術(shù)和邏輯運(yùn)算9、原碼、反碼、補(bǔ)碼10、計(jì)算機(jī)字符編碼方案六、C語言的起源及其特點(diǎn)1.C語言的誕生與發(fā)展(1)在C語言誕生以前,系統(tǒng)軟件主要是用匯編語言編寫的。由于匯編語言程序依賴于計(jì)算機(jī)硬件,其可讀性和可移植性都很差;但一般的高級(jí)語言又難以實(shí)現(xiàn)對(duì)計(jì)算機(jī)硬件的直接操作(這正是匯編語言的優(yōu)勢),于是人們盼望有一種兼有匯編語言和高級(jí)語言特性的新語言。(2)C語言是貝爾實(shí)驗(yàn)室于70年代初研制出來的,后來又被多次改進(jìn),并出現(xiàn)了多種版本。80年代初,美國國家標(biāo)準(zhǔn)化協(xié)會(huì)(ANSI),根據(jù)C語言問世以來各種版本對(duì)C語言的發(fā)展和擴(kuò)充,制定了ANSIC標(biāo)準(zhǔn)(1989年再次做了修訂)。六、C語言的起源及其特點(diǎn)2.C語言的特點(diǎn)(1)語言簡潔、緊湊,使用方便、靈活。(2)運(yùn)算符極其豐富,表達(dá)能力強(qiáng)。(3)數(shù)據(jù)結(jié)構(gòu)豐富,結(jié)構(gòu)化程度高(4)具有匯編語言和高級(jí)語言的優(yōu)勢(5)生成的目標(biāo)代碼質(zhì)量高,程序執(zhí)行效率高。(6)可以直接操縱硬件,比匯編程度的可移植性好。七、C語言程序的構(gòu)架1、C語言程序的構(gòu)架一個(gè)完整的C語言程序,是由一個(gè)main()函數(shù)(又稱主函數(shù))和若干個(gè)其它函數(shù)結(jié)合而成的,或僅由一個(gè)main()函數(shù)構(gòu)成。[例1.22]僅由main()函數(shù)構(gòu)成的C語言程序。#include<stdio.h>main(){
printf("ThisisaCprogram.\n");}程序運(yùn)行結(jié)果:ThisisaCprogram.七、C語言程序的構(gòu)架1.函數(shù)是C語言程序的基本單位。main()函數(shù)的作用,相當(dāng)于其它高級(jí)語言中的主程序;其它函數(shù)的作用,相當(dāng)于子程序。2.C語言程序總是從main()函數(shù)開始執(zhí)行。一個(gè)C語言程序,總是從main()函數(shù)開始執(zhí)行,而不論其在程序中的位置。當(dāng)主函數(shù)執(zhí)行完畢時(shí),亦即程序執(zhí)行完畢。習(xí)慣上,將主函數(shù)main()放在最前頭。七、C語言程序的構(gòu)架2、函數(shù)的一般結(jié)構(gòu)任何函數(shù)(包括主函數(shù)main())都是由函數(shù)說明和函數(shù)體兩部分組成。其一般結(jié)構(gòu)如下:函數(shù)返回值的類型函數(shù)名(函數(shù)參數(shù)表){
說明語句部分;執(zhí)行語句部分;
}
七、C語言程序的構(gòu)架源程序書寫格式1.所有語句都必須以分號(hào)";"結(jié)束,函數(shù)的最后一個(gè)語句也不例外。2.程序行的書寫格式自由既允許1行內(nèi)寫幾條語句,也允許1條語句分寫在幾行上。3.允許使用注釋。C語言的注釋格式為:/*……*/。(1)“/*”和“*/”必須成對(duì)使用,且“/”和“*”、以及“*”和“/”之間不能有空格,否則都出錯(cuò)。例如,main(){intnum1,num2;
printf("Inputthefirstintegernumber:");scanf("%d",&num1);
printf("Inputthesecondintegernumber:");
scanf("%d",&num2);
printf("max=%d\n",max(num1,num2));}如果某條語句很長,一般需要將其分寫在幾行上。七、C語言程序的構(gòu)架技巧:為避免遺漏必須配對(duì)使用的符號(hào),例如注釋符號(hào)、函數(shù)體的起止標(biāo)識(shí)符(花括號(hào))、圓括號(hào)等等,在輸入時(shí),可連續(xù)輸入這些起止標(biāo)識(shí)符,然后再在其中進(jìn)行插入來完成內(nèi)容的編輯。在起止標(biāo)識(shí)符嵌套時(shí),以及相距較遠(yuǎn)時(shí),這樣做更有必要。(2)注釋的位置,可以單占一行,也可以跟在語句的后面。(3)如果一行寫不下,可另起一行繼續(xù)寫。(4)注釋中允許使用漢字。在非中文操作系統(tǒng)下,看到的是一串亂碼,但不影響程序運(yùn)行。(5)使用"http://"可以在一行內(nèi)注釋。例如:
printf("max=%d",c);//輸出c的值八、基本字符集和保留字1、C語言基本字符集C語言與其他程序設(shè)計(jì)語言一樣,有一整套帶有嚴(yán)格規(guī)定的符號(hào)體系來描述C語言的詞法、語法、語義、語用。C語言的基本字符集是編寫源程序時(shí)準(zhǔn)用字符的集合,C語言編譯程序能夠識(shí)別集合中的字符。C語言編寫源程序時(shí)使用的基本字符包括:(1)
大寫字母ABCD……Z,小寫字母abcde……z(2)
數(shù)字0123456789(3)
圖形符號(hào)~!#%&?|^*+-_/\“‘()[]{},.:;?(4)
轉(zhuǎn)義符號(hào):換行\(zhòng)n水平制表位\t退格\b換頁\f回車\r垂直制表位\v反斜線\\單引號(hào)\’雙引號(hào)\”8進(jìn)制數(shù)\ddd16進(jìn)制數(shù)\xhh
八、基本字符集和保留字保留字又稱關(guān)鍵字,是由編譯程序預(yù)定義具有固定含義的單詞,保留字有特定的含義的專門的用途,用戶不能用保留字作為常量、變量、類型或函數(shù)的名字。ANSIC標(biāo)準(zhǔn)中定義的32個(gè)保留字,在TurboC中在存儲(chǔ)類型說明中增加了7個(gè)保留字,具體見表1.7。九、上機(jī)環(huán)境簡介1、TurboC集成開發(fā)環(huán)境(1)進(jìn)入命令行方式:“開始”→“運(yùn)行”→打開“運(yùn)行”對(duì)話框→輸入“cmd”→進(jìn)行命令行方式,顯示提示符(2)在E盤建立TC子目錄,將光盤或U盤中TurboC的所有文件包括INCLUDE、LIB兩個(gè)子目錄都復(fù)制在到TC子目錄中,運(yùn)行TC程序:E:\TC>TC;打開TurboC集成開發(fā)環(huán)境<F10>→”O(jiān)ptions”→”Directories”;設(shè)置以下路徑Includedirectories:E:\TC\INCLUDELibrarydirectories:E:\TC\LIBOutputdirectories:E:\TCTURBOCdirectories:E:\TCPickfilename:CirrentPickfile:九、上機(jī)環(huán)境簡介3、保存配置
<F10>→”O(jiān)ptions”→”Save
Options”→”Config
File:C:\TC\TCCONFIG.TC”完成設(shè)置后,保存配置文件后,運(yùn)行以下小程序“Hello.c”用以下操作運(yùn)行程序:<F10>→RUN→RUN;運(yùn)行正確后可以查看輸出屏幕<F10>→RUN→UserScreen;程序顯示“Hello!”表示設(shè)置正確。4、源程序的裝載和保存在網(wǎng)絡(luò)E盤上建立K12子目錄,在該子目錄下以學(xué)號(hào)建立學(xué)生子目錄,如95000012。在該子目錄下保存BLANK1.C、MODIFY1.C、READ1.C、PROGRAM1.C等源文件。(1)用菜單打開或裝載源文件BLANK1.C的操作如下:<F10>→”File”→”Load”→”*.C”→”BLANK1.C”
編輯完成后按.<F10>→”File”→”Save”存盤。(2)用快捷鍵打開或裝載源文件MODIFY1.C的操作如下:<F3>→“Load”→“*.C”→“MODI
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 課題申報(bào)參考:聚焦體育新課標(biāo)小學(xué)體育課運(yùn)動(dòng)負(fù)荷主觀測評(píng)路徑與調(diào)控策略研究
- 課題申報(bào)參考:教師教學(xué)洞察力的表現(xiàn)特征、生成機(jī)制及發(fā)展路徑研究
- 包含維修條款的2025年度二手手機(jī)買賣合同范本3篇
- 二零二五版桉樹種植與星海生態(tài)教育合作項(xiàng)目合同3篇
- 二零二五年度出國留學(xué)學(xué)費(fèi)支付及管理合同3篇
- 二零二五年度煤炭運(yùn)輸合同范本:多式聯(lián)運(yùn)與綜合物流服務(wù)協(xié)議4篇
- 二零二五版文化中心場地租賃協(xié)議書4篇
- 2025年度海洋工程聘用工程師及項(xiàng)目實(shí)施合同4篇
- 2025版充電樁安全風(fēng)險(xiǎn)評(píng)估與應(yīng)急預(yù)案制定合同3篇
- 二零二五版智慧醫(yī)療路演投資合同范本4篇
- 2025年度版權(quán)授權(quán)協(xié)議:游戲角色形象設(shè)計(jì)與授權(quán)使用3篇
- 心肺復(fù)蘇課件2024
- 《城鎮(zhèn)燃?xì)忸I(lǐng)域重大隱患判定指導(dǎo)手冊(cè)》專題培訓(xùn)
- 湖南財(cái)政經(jīng)濟(jì)學(xué)院專升本管理學(xué)真題
- 全國身份證前六位、區(qū)號(hào)、郵編-編碼大全
- 2024-2025學(xué)年福建省廈門市第一中學(xué)高一(上)適應(yīng)性訓(xùn)練物理試卷(10月)(含答案)
- 《零售學(xué)第二版教學(xué)》課件
- 廣東省珠海市香洲區(qū)2023-2024學(xué)年四年級(jí)下學(xué)期期末數(shù)學(xué)試卷
- 房地產(chǎn)行業(yè)職業(yè)生涯規(guī)劃
- 江蘇省建筑與裝飾工程計(jì)價(jià)定額(2014)電子表格版
- MOOC 數(shù)字電路與系統(tǒng)-大連理工大學(xué) 中國大學(xué)慕課答案
評(píng)論
0/150
提交評(píng)論