




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、3/6/2022.1C語(yǔ)言語(yǔ)言 任課教師介紹任課教師介紹 副教授手機(jī):692211E-mail: 網(wǎng)站: 調(diào)試程序,找出其中錯(cuò)誤并改正。nCH2ABS: a, b是任意輸入的兩個(gè)整數(shù),計(jì)算 a+|b|,并顯示計(jì)算結(jié)果。nCH2CVS: 輸入一個(gè)華氏溫度F,輸出對(duì)應(yīng)的攝氏溫度。公式為:c=5/9(F-32)n練習(xí):2.6 2.7 2.8 3/6/2022.3第第1章章 C語(yǔ)言程序設(shè)計(jì)基本概念語(yǔ)言程序設(shè)計(jì)基本概念了解了解C語(yǔ)言的歷史和特點(diǎn)語(yǔ)言的歷史和特點(diǎn)熟悉計(jì)算機(jī)語(yǔ)言的不同類型熟悉計(jì)算機(jī)語(yǔ)言的不同類型了解了解C語(yǔ)言的結(jié)構(gòu)語(yǔ)言的結(jié)構(gòu)理解理解C語(yǔ)言程序的開(kāi)發(fā)過(guò)程語(yǔ)言程序的開(kāi)發(fā)過(guò)程了解算法的概念了解算法
2、的概念了解結(jié)構(gòu)化程序設(shè)計(jì)方法了解結(jié)構(gòu)化程序設(shè)計(jì)方法學(xué)習(xí)目標(biāo)學(xué)習(xí)目標(biāo)3/6/2022.4nC C語(yǔ)言的特點(diǎn)語(yǔ)言的特點(diǎn)語(yǔ)言簡(jiǎn)潔、緊湊,使用方便、靈活語(yǔ)言簡(jiǎn)潔、緊湊,使用方便、靈活運(yùn)算符豐富,具有多種運(yùn)算功能運(yùn)算符豐富,具有多種運(yùn)算功能有豐富的數(shù)據(jù)類型有豐富的數(shù)據(jù)類型生成代碼質(zhì)量高,程序執(zhí)行效率高生成代碼質(zhì)量高,程序執(zhí)行效率高C程序的可移植性好程序的可移植性好是一種結(jié)構(gòu)化程序設(shè)計(jì)語(yǔ)言是一種結(jié)構(gòu)化程序設(shè)計(jì)語(yǔ)言語(yǔ)法限制不嚴(yán),程序設(shè)計(jì)自由度大語(yǔ)法限制不嚴(yán),程序設(shè)計(jì)自由度大C提供的位運(yùn)算可直接對(duì)硬件操作提供的位運(yùn)算可直接對(duì)硬件操作3/6/2022.5n程序設(shè)計(jì)語(yǔ)言程序設(shè)計(jì)語(yǔ)言人與計(jì)算機(jī)進(jìn)行信息交流的工具人與
3、計(jì)算機(jī)進(jìn)行信息交流的工具機(jī)器語(yǔ)言機(jī)器語(yǔ)言匯編語(yǔ)言匯編語(yǔ)言高級(jí)語(yǔ)言高級(jí)語(yǔ)言面向過(guò)程語(yǔ)言面向過(guò)程語(yǔ)言 (C、PASCAL等等)面向?qū)ο笳Z(yǔ)言面向?qū)ο笳Z(yǔ)言 (JAVA、C+等等)甚高級(jí)語(yǔ)言甚高級(jí)語(yǔ)言 (尚在開(kāi)發(fā)尚在開(kāi)發(fā))3/6/2022.6機(jī)器語(yǔ)言機(jī)器語(yǔ)言 1、與計(jì)算機(jī)硬件的設(shè)計(jì)密切相關(guān)、與計(jì)算機(jī)硬件的設(shè)計(jì)密切相關(guān) (無(wú)移植性無(wú)移植性) 2、是計(jì)算機(jī)能直接識(shí)別的語(yǔ)言、是計(jì)算機(jī)能直接識(shí)別的語(yǔ)言 3、由一組二進(jìn)制、由一組二進(jìn)制0和和1序列構(gòu)成序列構(gòu)成 【例】計(jì)算【例】計(jì)算 4+8 取數(shù)取數(shù) 1011 0000 0000 0100 將將4 4送累加器送累加器 加加 0000 0100 0000 1000 8
4、 8與累加器中的與累加器中的4 4相加相加 停機(jī)停機(jī) 1111 0100特點(diǎn):繁瑣、難記、難讀、難寫(xiě)、不可移植特點(diǎn):繁瑣、難記、難讀、難寫(xiě)、不可移植 3/6/2022.7匯編語(yǔ)言匯編語(yǔ)言 1、與計(jì)算機(jī)硬件的設(shè)計(jì)密切相關(guān)、與計(jì)算機(jī)硬件的設(shè)計(jì)密切相關(guān) 2、計(jì)算機(jī)不能直接識(shí)別、計(jì)算機(jī)不能直接識(shí)別 3、計(jì)算機(jī)基本操作是采用英語(yǔ)縮寫(xiě)的、計(jì)算機(jī)基本操作是采用英語(yǔ)縮寫(xiě)的助記符來(lái)編寫(xiě)程序助記符來(lái)編寫(xiě)程序 【例】計(jì)算【例】計(jì)算 4+8 MOVE AL, 4 將將4 4 送累加器送累加器 ADD AL, 8 8 8 與累加器中的與累加器中的 4 4相加相加 HLT 停機(jī)停機(jī) 3/6/2022.8 匯編程序:匯編程
5、序: 將匯編語(yǔ)言程序轉(zhuǎn)換為計(jì)算機(jī)能識(shí)別的將匯編語(yǔ)言程序轉(zhuǎn)換為計(jì)算機(jī)能識(shí)別的機(jī)器語(yǔ)言機(jī)器語(yǔ)言3/6/2022.9高級(jí)語(yǔ)言高級(jí)語(yǔ)言 基本與計(jì)算機(jī)的硬件設(shè)備無(wú)關(guān)基本與計(jì)算機(jī)的硬件設(shè)備無(wú)關(guān) 【例】計(jì)算【例】計(jì)算4+8(用(用C語(yǔ)言編寫(xiě))語(yǔ)言編寫(xiě)) sum=4+8;編譯程序:編譯程序: 高級(jí)語(yǔ)言轉(zhuǎn)換為機(jī)器語(yǔ)言的翻譯程序高級(jí)語(yǔ)言轉(zhuǎn)換為機(jī)器語(yǔ)言的翻譯程序3/6/2022.10n簡(jiǎn)單的簡(jiǎn)單的C C程序?qū)嵗绦驅(qū)嵗?運(yùn)行結(jié)果: Welcome to C programming.【例【例1-1】 /第一個(gè)第一個(gè)C程序程序#includestdio.hvoid main() /* 函數(shù)頭函數(shù)頭 */ printf(
6、Welcome to C programming.n);注釋注釋 頭文件頭文件主函數(shù)、注釋主函數(shù)、注釋 系統(tǒng)提供的系統(tǒng)提供的輸出函數(shù)輸出函數(shù) 3/6/2022.11 【例【例1-2】編寫(xiě)求三數(shù)中最大值問(wèn)題的程序】編寫(xiě)求三數(shù)中最大值問(wèn)題的程序 #include int max_value(int a, int b, int c) int max; if(ab) max=a; else max=b; if(maxb THEN max=a ELSE max=bIF maxc THEN 輸出輸出 max ELSE 輸出輸出 c3/6/2022.17流程圖流程圖: 傳統(tǒng)圖語(yǔ)言表示法傳統(tǒng)圖語(yǔ)言表示法 AN
7、SI規(guī)定了一些常用的流程圖符號(hào):規(guī)定了一些常用的流程圖符號(hào):起止框起止框 輸入輸出框輸入輸出框 判斷框判斷框 處理框處理框 流程線流程線 連接圈連接圈【例】醬油與醋的問(wèn)題:試用自然語(yǔ)言描述【例】醬油與醋的問(wèn)題:試用自然語(yǔ)言描述如何將醬油與醋互換位置的過(guò)程。如何將醬油與醋互換位置的過(guò)程。 3/6/2022.18三個(gè)數(shù)中最大值問(wèn)題的流程圖(圖三個(gè)數(shù)中最大值問(wèn)題的流程圖(圖1-4)3/6/2022.19N-S圖圖( (結(jié)構(gòu)化流程圖結(jié)構(gòu)化流程圖) ): 圖語(yǔ)言表示法圖語(yǔ)言表示法 三個(gè)數(shù)中最大值問(wèn)題的三個(gè)數(shù)中最大值問(wèn)題的 N-S圖(圖圖(圖1-5)3/6/2022.20n結(jié)構(gòu)化程序設(shè)計(jì)方法結(jié)構(gòu)化程序設(shè)計(jì)
8、方法 結(jié)構(gòu)化程序設(shè)計(jì)的基本方法:結(jié)構(gòu)化程序設(shè)計(jì)的基本方法: 自頂向下,逐步求精,將復(fù)雜問(wèn)題分解為若干的自頂向下,逐步求精,將復(fù)雜問(wèn)題分解為若干的獨(dú)立的小問(wèn)題(小模塊)。獨(dú)立的小問(wèn)題(小模塊)。 【例】求解兩個(gè)數(shù)的平均值【例】求解兩個(gè)數(shù)的平均值1、分解:?jiǎn)栴}分解為三個(gè)模塊、分解:?jiǎn)栴}分解為三個(gè)模塊 : S1: 輸入兩個(gè)數(shù)輸入兩個(gè)數(shù)a, b S2: 求兩個(gè)數(shù)的平均值賦給求兩個(gè)數(shù)的平均值賦給aver S3:輸出平均值:輸出平均值 3/6/2022.212、實(shí)現(xiàn)方法,算法細(xì)化、實(shí)現(xiàn)方法,算法細(xì)化 S1: 調(diào)調(diào)用輸入函數(shù),完成輸入用輸入函數(shù),完成輸入S2: 設(shè)計(jì)一個(gè)求解平均值的函數(shù)設(shè)計(jì)一個(gè)求解平均值的函
9、數(shù)averge( ) S3: 調(diào)用輸出函數(shù),完成輸出調(diào)用輸出函數(shù),完成輸出 3、C 語(yǔ)言實(shí)現(xiàn)主函數(shù)的編程語(yǔ)言實(shí)現(xiàn)主函數(shù)的編程 /求兩個(gè)數(shù)的平均值求兩個(gè)數(shù)的平均值void main() /主函數(shù)主函數(shù) float a, b, ave; /聲明聲明a、b和和ave為實(shí)型變量為實(shí)型變量 scanf(%f%f,&a,&b); /輸入輸入a、b兩個(gè)數(shù)的值兩個(gè)數(shù)的值 ave=average(a,b); /調(diào)用調(diào)用average函數(shù)求平均值函數(shù)求平均值 printf(average=%fn,ave); /輸出輸出ave的值的值 3/6/2022.224、逐步求精:設(shè)計(jì)、逐步求精:設(shè)計(jì)aver
10、ag(float x,float y)函函數(shù)的算法(設(shè)兩個(gè)參數(shù)為數(shù)的算法(設(shè)兩個(gè)參數(shù)為float x,float y)S2.1 :把:把x加加y的和除的和除2的值送給的值送給averS2.2 :把:把a(bǔ)ver的值返回給主函數(shù)。的值返回給主函數(shù)。5、C 語(yǔ)言實(shí)現(xiàn)語(yǔ)言實(shí)現(xiàn)averag(float x,float y)函數(shù)的編程函數(shù)的編程#includefloat average(float x, float y) /求兩個(gè)數(shù)的平均值求兩個(gè)數(shù)的平均值 float aver; /聲明聲明aver為實(shí)型變量為實(shí)型變量 aver=(x+y)/2; /計(jì)算兩個(gè)數(shù)的平均值賦給計(jì)算兩個(gè)數(shù)的平均值賦給aver r
11、eturn (aver); /aver的值作為函數(shù)的的返回值的值作為函數(shù)的的返回值3/6/2022.236、兩模塊連接成一個(gè)完整的求解程序、兩模塊連接成一個(gè)完整的求解程序#includefloat average(float x, float y) /求兩個(gè)數(shù)的平均值求兩個(gè)數(shù)的平均值 float z, aver; /聲明聲明aver為實(shí)型變量為實(shí)型變量 aver=(x+y)/2; /計(jì)算兩個(gè)數(shù)的平均值賦給計(jì)算兩個(gè)數(shù)的平均值賦給aver return (aver); /aver的值作為函數(shù)的的返回值的值作為函數(shù)的的返回值void main() /主函數(shù)主函數(shù) float a, b, ave; /
12、聲明聲明a、b和和ave為實(shí)型變量為實(shí)型變量 scanf(%f%f, &a, &b); /輸入輸入a、b兩個(gè)數(shù)的值兩個(gè)數(shù)的值 ave=average(a, b); /調(diào)用調(diào)用average函數(shù)求平均值函數(shù)求平均值 printf(average=%fn, ave); /輸出輸出ave的值的值 3/6/2022.24用自然語(yǔ)言描述:用自然語(yǔ)言描述:S1: 輸入兩個(gè)整數(shù)輸入兩個(gè)整數(shù)x, yS2: 交換交換x, y細(xì)化細(xì)化S2:S2.1:將:將x賦給賦給t S2.2:將:將y賦給賦給x S2.3:將:將t賦給賦給y相應(yīng)的程序段:相應(yīng)的程序段:/輸入輸入x、yscanf(%d%d, &a
13、mp;x, &y); /交換交換x、yt=x; x=y;y=t;【例【例1-3】設(shè)計(jì)兩整數(shù)交換的算法】設(shè)計(jì)兩整數(shù)交換的算法 3/6/2022.25兩數(shù)交換的另一個(gè)奇特難懂的算法:兩數(shù)交換的另一個(gè)奇特難懂的算法:S1: 輸入兩個(gè)整數(shù)輸入兩個(gè)整數(shù)x, yS2: 將將x+y賦給賦給x S3: 將將x-y賦給賦給yS4: 將將x-y賦給賦給x相應(yīng)的程序段:相應(yīng)的程序段: scanf(%d%d, &x, &y); /輸入輸入x、y x=x+y; /交換交換x、y y=x-y; x=x-y;3/6/2022.26【例】對(duì)于一個(gè)大于【例】對(duì)于一個(gè)大于3的整數(shù),判斷它是不是的整數(shù),判斷
14、它是不是素?cái)?shù)(循環(huán)之例)素?cái)?shù)(循環(huán)之例)算法如下: 1. 輸入n 2. i=2 3. n被i除,得余數(shù)r 4. 若r=0,則輸出n“不是素?cái)?shù)”,算法結(jié)束 5. i=i+1 6. 若in/2,則重新執(zhí)行3. ;否則執(zhí)行7. 7. 輸出n“是素?cái)?shù)”,算法結(jié)束3/6/2022.27結(jié)構(gòu)化程序的三種基本控制結(jié)構(gòu):結(jié)構(gòu)化程序的三種基本控制結(jié)構(gòu): 順序結(jié)構(gòu)順序結(jié)構(gòu) 選擇結(jié)構(gòu)(選擇結(jié)構(gòu)(if_else) 循環(huán)結(jié)構(gòu)(循環(huán)結(jié)構(gòu)(while, repeat_until)順序結(jié)構(gòu)順序結(jié)構(gòu):流程圖流程圖N-S圖圖 先執(zhí)行先執(zhí)行A操作,操作,再執(zhí)行再執(zhí)行B操作。操作。3/6/2022.28選擇結(jié)構(gòu)選擇結(jié)構(gòu):流程圖流程圖
15、N-S圖圖 當(dāng)當(dāng)P 條件成立條件成立 (為真(為真T)執(zhí)行)執(zhí)行A 否則否則 (為假(為假 F)執(zhí)行)執(zhí)行B3/6/2022.29循環(huán)結(jié)構(gòu)循環(huán)結(jié)構(gòu)1(while ):流程圖流程圖N-S圖圖 當(dāng)當(dāng)P條件成立條件成立 (為真(為真 T)反復(fù)執(zhí)行)反復(fù)執(zhí)行A, 直到直到P為為 假假時(shí)結(jié)束。時(shí)結(jié)束。3/6/2022.30循環(huán)結(jié)構(gòu)循環(huán)結(jié)構(gòu)2(repeat_until)流程圖流程圖N-S圖圖 先執(zhí)行先執(zhí)行A操作,再判斷操作,再判斷P,若為,若為假假,再執(zhí)行,再執(zhí)行A,直到,直到P為為 真真時(shí)結(jié)束。時(shí)結(jié)束。3/6/2022.31三種基本結(jié)構(gòu)的共同特點(diǎn):三種基本結(jié)構(gòu)的共同特點(diǎn):1)單入口)單入口2)單出口)單
16、出口3)無(wú)死語(yǔ)句)無(wú)死語(yǔ)句4)無(wú)死循環(huán))無(wú)死循環(huán)順序順序選擇選擇循環(huán)循環(huán)3/6/2022.32nC C程序的編輯、編譯和執(zhí)行程序的編輯、編譯和執(zhí)行編輯:編輯:利用編輯器,通過(guò)鍵盤(pán)將利用編輯器,通過(guò)鍵盤(pán)將C源程序輸源程序輸入到計(jì)算機(jī),并以文件形成保存到磁盤(pán)。入到計(jì)算機(jī),并以文件形成保存到磁盤(pán)。編譯:編譯:利用編譯器,將利用編譯器,將C源程序編譯成目標(biāo)源程序編譯成目標(biāo)程序。程序。連接:連接:利用連接器,將利用連接器,將C已編譯的目標(biāo)程序已編譯的目標(biāo)程序和庫(kù)函數(shù)連接之后,生成可執(zhí)行文件,并和庫(kù)函數(shù)連接之后,生成可執(zhí)行文件,并以文件形成存入到磁盤(pán)上,文件擴(kuò)展名以文件形成存入到磁盤(pán)上,文件擴(kuò)展名為為 .
17、exe。運(yùn)行:運(yùn)行: 在操作系統(tǒng)下運(yùn)行可執(zhí)行文件。在操作系統(tǒng)下運(yùn)行可執(zhí)行文件。3/6/2022.33n上機(jī)實(shí)踐上機(jī)實(shí)踐運(yùn)行環(huán)境turbo C (2.0或3.0)編輯錄入、修改編譯翻譯為二進(jìn)制代碼(obj)連接連接各模塊的二進(jìn)制代碼,生成可執(zhí)行文件(exe)運(yùn)行運(yùn)行程序3/6/2022.34Turbo C 2.0上機(jī)環(huán)境簡(jiǎn)介n四個(gè)最主要菜單四個(gè)最主要菜單nFile 創(chuàng)建新文件、打開(kāi)文件、保存文件、改變目錄、退出系統(tǒng)nEdit 切換到編輯狀態(tài)nCompile 編譯、連接成目標(biāo)文件或可執(zhí)行文件nRun 自動(dòng)編譯、連接并運(yùn)行3/6/2022.35Turbo C 3.0上機(jī)環(huán)境簡(jiǎn)介n五個(gè)最主要菜單五個(gè)最主要菜單nFile 創(chuàng)建新文件、打開(kāi)文件、保存文件、改變目錄、退出系統(tǒng)nEdit 常用編輯命令nCompile 編譯、連接成目標(biāo)文件或可執(zhí)行文件nRun 自動(dòng)編譯、連接并運(yùn)行nWindows 窗口切換3/6/2022.36n可用快捷鍵打開(kāi)菜單 如按+F 可打開(kāi)文件菜單n輸入程序前一般應(yīng)先改變好目錄 dirn先編譯、后保存、再運(yùn)行n在3.0版本,可用鼠標(biāo),在多程序窗口環(huán)境下可選Windows-Next命令作窗口切換3/6/2022.37Turbo C 常用編輯命令n上翻一屏n下翻一屏n移到行首n移到行尾nQR移到文件首nQC移到
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 阮郎歸題目及答案
- 日語(yǔ)高考閱讀題目及答案
- 2023年學(xué)業(yè)水平合格考試三年分類匯編(真題)-專題三地球上的水03海水的運(yùn)動(dòng)
- 4 4 解三角形-2026版53高考數(shù)學(xué)總復(fù)習(xí)A版精煉
- 2023-2024學(xué)年江蘇省南京市江寧區(qū)高二下學(xué)期期末考試數(shù)學(xué)試卷(解析版)
- 2023-2024學(xué)年廣東省陽(yáng)江市高二下學(xué)期期末測(cè)試數(shù)學(xué)試題(解析版)
- 整改內(nèi)容回復(fù)函
- 2025年湖南省中考英語(yǔ)試卷真題(含答案)
- 合法的員工勞動(dòng)合同
- 年產(chǎn)30萬(wàn)平方米生態(tài)木護(hù)墻板新型環(huán)保材料研發(fā)生產(chǎn)項(xiàng)目可行性研究報(bào)告寫(xiě)作模板-申批備案
- (新版)特種設(shè)備安全管理取證考試題庫(kù)(濃縮500題)
- 中醫(yī)基礎(chǔ)情志護(hù)理
- 論網(wǎng)絡(luò)言論自由的法律規(guī)制分析研究-以當(dāng)前網(wǎng)絡(luò)暴力現(xiàn)象為解析 法學(xué)專業(yè)
- 2024閥控式鉛酸密封蓄電池
- 2024-2025形勢(shì)與政策:發(fā)展新質(zhì)生產(chǎn)力-推動(dòng)高質(zhì)量發(fā)展的內(nèi)在要求和重要著力點(diǎn)
- 倉(cāng)庫(kù)搬運(yùn)裝卸服務(wù)方案
- 示范區(qū)城區(qū)控制性詳細(xì)規(guī)劃說(shuō)明書(shū)
- 馬鞍山二中理科創(chuàng)新人才實(shí)驗(yàn)班招生考試物理試題
- CJJT 182-2014 城鎮(zhèn)供水與污水處理化驗(yàn)室技術(shù)規(guī)范
- 福建省2024年中考英語(yǔ)真題(含答案)
- GB/T 44198-2024空間站科學(xué)實(shí)驗(yàn)系統(tǒng)集成與驗(yàn)證要求
評(píng)論
0/150
提交評(píng)論