




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、3/6/2022.1C語言語言 任課教師介紹任課教師介紹 副教授手機:692211E-mail: 網(wǎng)站: 調試程序,找出其中錯誤并改正。nCH2ABS: a, b是任意輸入的兩個整數(shù),計算 a+|b|,并顯示計算結果。nCH2CVS: 輸入一個華氏溫度F,輸出對應的攝氏溫度。公式為:c=5/9(F-32)n練習:2.6 2.7 2.8 3/6/2022.3第第1章章 C語言程序設計基本概念語言程序設計基本概念了解了解C語言的歷史和特點語言的歷史和特點熟悉計算機語言的不同類型熟悉計算機語言的不同類型了解了解C語言的結構語言的結構理解理解C語言程序的開發(fā)過程語言程序的開發(fā)過程了解算法的概念了解算法
2、的概念了解結構化程序設計方法了解結構化程序設計方法學習目標學習目標3/6/2022.4nC C語言的特點語言的特點語言簡潔、緊湊,使用方便、靈活語言簡潔、緊湊,使用方便、靈活運算符豐富,具有多種運算功能運算符豐富,具有多種運算功能有豐富的數(shù)據(jù)類型有豐富的數(shù)據(jù)類型生成代碼質量高,程序執(zhí)行效率高生成代碼質量高,程序執(zhí)行效率高C程序的可移植性好程序的可移植性好是一種結構化程序設計語言是一種結構化程序設計語言語法限制不嚴,程序設計自由度大語法限制不嚴,程序設計自由度大C提供的位運算可直接對硬件操作提供的位運算可直接對硬件操作3/6/2022.5n程序設計語言程序設計語言人與計算機進行信息交流的工具人與
3、計算機進行信息交流的工具機器語言機器語言匯編語言匯編語言高級語言高級語言面向過程語言面向過程語言 (C、PASCAL等等)面向對象語言面向對象語言 (JAVA、C+等等)甚高級語言甚高級語言 (尚在開發(fā)尚在開發(fā))3/6/2022.6機器語言機器語言 1、與計算機硬件的設計密切相關、與計算機硬件的設計密切相關 (無移植性無移植性) 2、是計算機能直接識別的語言、是計算機能直接識別的語言 3、由一組二進制、由一組二進制0和和1序列構成序列構成 【例】計算【例】計算 4+8 取數(shù)取數(shù) 1011 0000 0000 0100 將將4 4送累加器送累加器 加加 0000 0100 0000 1000 8
4、 8與累加器中的與累加器中的4 4相加相加 停機停機 1111 0100特點:繁瑣、難記、難讀、難寫、不可移植特點:繁瑣、難記、難讀、難寫、不可移植 3/6/2022.7匯編語言匯編語言 1、與計算機硬件的設計密切相關、與計算機硬件的設計密切相關 2、計算機不能直接識別、計算機不能直接識別 3、計算機基本操作是采用英語縮寫的、計算機基本操作是采用英語縮寫的助記符來編寫程序助記符來編寫程序 【例】計算【例】計算 4+8 MOVE AL, 4 將將4 4 送累加器送累加器 ADD AL, 8 8 8 與累加器中的與累加器中的 4 4相加相加 HLT 停機停機 3/6/2022.8 匯編程序:匯編程
5、序: 將匯編語言程序轉換為計算機能識別的將匯編語言程序轉換為計算機能識別的機器語言機器語言3/6/2022.9高級語言高級語言 基本與計算機的硬件設備無關基本與計算機的硬件設備無關 【例】計算【例】計算4+8(用(用C語言編寫)語言編寫) sum=4+8;編譯程序:編譯程序: 高級語言轉換為機器語言的翻譯程序高級語言轉換為機器語言的翻譯程序3/6/2022.10n簡單的簡單的C C程序實例程序實例 運行結果: Welcome to C programming.【例【例1-1】 /第一個第一個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】編寫求三數(shù)中最大值問題的程序】編寫求三數(shù)中最大值問題的程序 #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)圖語言表示法傳統(tǒng)圖語言表示法 AN
7、SI規(guī)定了一些常用的流程圖符號:規(guī)定了一些常用的流程圖符號:起止框起止框 輸入輸出框輸入輸出框 判斷框判斷框 處理框處理框 流程線流程線 連接圈連接圈【例】醬油與醋的問題:試用自然語言描述【例】醬油與醋的問題:試用自然語言描述如何將醬油與醋互換位置的過程。如何將醬油與醋互換位置的過程。 3/6/2022.18三個數(shù)中最大值問題的流程圖(圖三個數(shù)中最大值問題的流程圖(圖1-4)3/6/2022.19N-S圖圖( (結構化流程圖結構化流程圖) ): 圖語言表示法圖語言表示法 三個數(shù)中最大值問題的三個數(shù)中最大值問題的 N-S圖(圖圖(圖1-5)3/6/2022.20n結構化程序設計方法結構化程序設計
8、方法 結構化程序設計的基本方法:結構化程序設計的基本方法: 自頂向下,逐步求精,將復雜問題分解為若干的自頂向下,逐步求精,將復雜問題分解為若干的獨立的小問題(小模塊)。獨立的小問題(小模塊)。 【例】求解兩個數(shù)的平均值【例】求解兩個數(shù)的平均值1、分解:問題分解為三個模塊、分解:問題分解為三個模塊 : S1: 輸入兩個數(shù)輸入兩個數(shù)a, b S2: 求兩個數(shù)的平均值賦給求兩個數(shù)的平均值賦給aver S3:輸出平均值:輸出平均值 3/6/2022.212、實現(xiàn)方法,算法細化、實現(xiàn)方法,算法細化 S1: 調調用輸入函數(shù),完成輸入用輸入函數(shù),完成輸入S2: 設計一個求解平均值的函數(shù)設計一個求解平均值的函
9、數(shù)averge( ) S3: 調用輸出函數(shù),完成輸出調用輸出函數(shù),完成輸出 3、C 語言實現(xiàn)主函數(shù)的編程語言實現(xiàn)主函數(shù)的編程 /求兩個數(shù)的平均值求兩個數(shù)的平均值void main() /主函數(shù)主函數(shù) float a, b, ave; /聲明聲明a、b和和ave為實型變量為實型變量 scanf(%f%f,&a,&b); /輸入輸入a、b兩個數(shù)的值兩個數(shù)的值 ave=average(a,b); /調用調用average函數(shù)求平均值函數(shù)求平均值 printf(average=%fn,ave); /輸出輸出ave的值的值 3/6/2022.224、逐步求精:設計、逐步求精:設計aver
10、ag(float x,float y)函函數(shù)的算法(設兩個參數(shù)為數(shù)的算法(設兩個參數(shù)為float x,float y)S2.1 :把:把x加加y的和除的和除2的值送給的值送給averS2.2 :把:把aver的值返回給主函數(shù)。的值返回給主函數(shù)。5、C 語言實現(xiàn)語言實現(xiàn)averag(float x,float y)函數(shù)的編程函數(shù)的編程#includefloat average(float x, float y) /求兩個數(shù)的平均值求兩個數(shù)的平均值 float aver; /聲明聲明aver為實型變量為實型變量 aver=(x+y)/2; /計算兩個數(shù)的平均值賦給計算兩個數(shù)的平均值賦給aver r
11、eturn (aver); /aver的值作為函數(shù)的的返回值的值作為函數(shù)的的返回值3/6/2022.236、兩模塊連接成一個完整的求解程序、兩模塊連接成一個完整的求解程序#includefloat average(float x, float y) /求兩個數(shù)的平均值求兩個數(shù)的平均值 float z, aver; /聲明聲明aver為實型變量為實型變量 aver=(x+y)/2; /計算兩個數(shù)的平均值賦給計算兩個數(shù)的平均值賦給aver return (aver); /aver的值作為函數(shù)的的返回值的值作為函數(shù)的的返回值void main() /主函數(shù)主函數(shù) float a, b, ave; /
12、聲明聲明a、b和和ave為實型變量為實型變量 scanf(%f%f, &a, &b); /輸入輸入a、b兩個數(shù)的值兩個數(shù)的值 ave=average(a, b); /調用調用average函數(shù)求平均值函數(shù)求平均值 printf(average=%fn, ave); /輸出輸出ave的值的值 3/6/2022.24用自然語言描述:用自然語言描述:S1: 輸入兩個整數(shù)輸入兩個整數(shù)x, yS2: 交換交換x, y細化細化S2:S2.1:將:將x賦給賦給t S2.2:將:將y賦給賦給x S2.3:將:將t賦給賦給y相應的程序段:相應的程序段:/輸入輸入x、yscanf(%d%d, &a
13、mp;x, &y); /交換交換x、yt=x; x=y;y=t;【例【例1-3】設計兩整數(shù)交換的算法】設計兩整數(shù)交換的算法 3/6/2022.25兩數(shù)交換的另一個奇特難懂的算法:兩數(shù)交換的另一個奇特難懂的算法:S1: 輸入兩個整數(shù)輸入兩個整數(shù)x, yS2: 將將x+y賦給賦給x S3: 將將x-y賦給賦給yS4: 將將x-y賦給賦給x相應的程序段:相應的程序段: scanf(%d%d, &x, &y); /輸入輸入x、y x=x+y; /交換交換x、y y=x-y; x=x-y;3/6/2022.26【例】對于一個大于【例】對于一個大于3的整數(shù),判斷它是不是的整數(shù),判斷
14、它是不是素數(shù)(循環(huán)之例)素數(shù)(循環(huán)之例)算法如下: 1. 輸入n 2. i=2 3. n被i除,得余數(shù)r 4. 若r=0,則輸出n“不是素數(shù)”,算法結束 5. i=i+1 6. 若in/2,則重新執(zhí)行3. ;否則執(zhí)行7. 7. 輸出n“是素數(shù)”,算法結束3/6/2022.27結構化程序的三種基本控制結構:結構化程序的三種基本控制結構: 順序結構順序結構 選擇結構(選擇結構(if_else) 循環(huán)結構(循環(huán)結構(while, repeat_until)順序結構順序結構:流程圖流程圖N-S圖圖 先執(zhí)行先執(zhí)行A操作,操作,再執(zhí)行再執(zhí)行B操作。操作。3/6/2022.28選擇結構選擇結構:流程圖流程圖
15、N-S圖圖 當當P 條件成立條件成立 (為真(為真T)執(zhí)行)執(zhí)行A 否則否則 (為假(為假 F)執(zhí)行)執(zhí)行B3/6/2022.29循環(huán)結構循環(huán)結構1(while ):流程圖流程圖N-S圖圖 當當P條件成立條件成立 (為真(為真 T)反復執(zhí)行)反復執(zhí)行A, 直到直到P為為 假假時結束。時結束。3/6/2022.30循環(huán)結構循環(huán)結構2(repeat_until)流程圖流程圖N-S圖圖 先執(zhí)行先執(zhí)行A操作,再判斷操作,再判斷P,若為,若為假假,再執(zhí)行,再執(zhí)行A,直到,直到P為為 真真時結束。時結束。3/6/2022.31三種基本結構的共同特點:三種基本結構的共同特點:1)單入口)單入口2)單出口)單
16、出口3)無死語句)無死語句4)無死循環(huán))無死循環(huán)順序順序選擇選擇循環(huán)循環(huán)3/6/2022.32nC C程序的編輯、編譯和執(zhí)行程序的編輯、編譯和執(zhí)行編輯:編輯:利用編輯器,通過鍵盤將利用編輯器,通過鍵盤將C源程序輸源程序輸入到計算機,并以文件形成保存到磁盤。入到計算機,并以文件形成保存到磁盤。編譯:編譯:利用編譯器,將利用編譯器,將C源程序編譯成目標源程序編譯成目標程序。程序。連接:連接:利用連接器,將利用連接器,將C已編譯的目標程序已編譯的目標程序和庫函數(shù)連接之后,生成可執(zhí)行文件,并和庫函數(shù)連接之后,生成可執(zhí)行文件,并以文件形成存入到磁盤上,文件擴展名以文件形成存入到磁盤上,文件擴展名為為 .
17、exe。運行:運行: 在操作系統(tǒng)下運行可執(zhí)行文件。在操作系統(tǒng)下運行可執(zhí)行文件。3/6/2022.33n上機實踐上機實踐運行環(huán)境turbo C (2.0或3.0)編輯錄入、修改編譯翻譯為二進制代碼(obj)連接連接各模塊的二進制代碼,生成可執(zhí)行文件(exe)運行運行程序3/6/2022.34Turbo C 2.0上機環(huán)境簡介n四個最主要菜單四個最主要菜單nFile 創(chuàng)建新文件、打開文件、保存文件、改變目錄、退出系統(tǒng)nEdit 切換到編輯狀態(tài)nCompile 編譯、連接成目標文件或可執(zhí)行文件nRun 自動編譯、連接并運行3/6/2022.35Turbo C 3.0上機環(huán)境簡介n五個最主要菜單五個最主要菜單nFile 創(chuàng)建新文件、打開文件、保存文件、改變目錄、退出系統(tǒng)nEdit 常用編輯命令nCompile 編譯、連接成目標文件或可執(zhí)行文件nRun 自動編譯、連接并運行nWindows 窗口切換3/6/2022.36n可用快捷鍵打開菜單 如按+F 可打開文件菜單n輸入程序前一般應先改變好目錄 dirn先編譯、后保存、再運行n在3.0版本,可用鼠標,在多程序窗口環(huán)境下可選Windows-Next命令作窗口切換3/6/2022.37Turbo C 常用編輯命令n上翻一屏n下翻一屏n移到行首n移到行尾nQR移到文件首nQC移到
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 股權投資股權信息披露與投資風險協(xié)議
- 無人機輔助國際礦業(yè)勘查租賃及成果分享合作協(xié)議
- 網(wǎng)絡虛擬財產交易結算服務與用戶權益保障協(xié)議
- 水電設施保養(yǎng)與應急預案合同
- 3D打印技術與玩具設計課程計劃
- 2025年低介電玻璃纖維項目申請報告模范
- 2025年三片式球閥項目立項申請報告模板
- 智能家居安裝工期保障與措施
- 2025年膠片型相機、CCD相機、紅外相機、恒星相機項目提案報告模板
- 管道工程施工揚塵控制措施
- 新興原料市場分析-洞察闡釋
- 社工崗前培訓課件
- 航運業(yè)人力資源開發(fā)與管理考核試卷
- 《企業(yè)的股權規(guī)范化落地實務》-20250506
- 福建省三明市2025年普通高中高三畢業(yè)班五月質量檢測物理試卷及答案(三明四檢)
- 山東省青島市、淄博市2025年高三年級第二次適應性檢測英語試題及答案(青島、淄博二模)
- 廣東省佛山市高三二模語文試題(原卷版)
- 2024年新疆額敏縣事業(yè)單位公開招聘村務工作者筆試題帶答案
- 7.1 觀察物體(課件)-2024-2025學年蘇教版數(shù)學一年級下冊
- 早產兒試題及答案多選
- 2025年公共安全管理考試題及答案
評論
0/150
提交評論