版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領
文檔簡介
廈門理工學院高級語言程序設計教學課件
第1章C語言程序設計概述廈門理工學院計算機科學與技術(shù)系
2/6/2023教師:莊蔚蔚E-Mail:
zhuangweiwei@
學習要求及成績構(gòu)成成績構(gòu)成平時考勤:10%
實驗成績:20%
上機考試:35%(期中10%、期末25%
)期末考試:35%2教材、參考書與課時安排教材C語言程序設計
吳蕓、翁偉廈門大學出版社參考C程序設計譚浩強清華大學出版社3什么是程序
程序一詞來自生活,通常指完成某些事務的一種既定方式和過程在日常生活中,可以將程序看成對一系列動作的執(zhí)行過程的描述前言4引入:智力題
100個硬幣,其中99個真硬幣,1個假硬幣。真幣和假幣不一樣重,如何使用天平判斷出真幣重還是假幣重?5引入:智力題Setp1.
100枚硬幣分A,B兩堆,各50枚一堆。Setp2.
將A,B兩堆放天平上稱第一次,設結(jié)果是A堆重,B堆輕。Setp3.
將重的A堆分C,D兩堆,各25枚一堆。Setp4.
將C,D兩堆放天平上稱第二次。Setp5.
如果C,D兩堆一樣重,說明假幣不在重的A堆中,而
在輕的B堆中,說明假幣輕。Setp6.
如果C,D兩堆不一樣重,說明假幣在重的A堆中,說
明假幣重。6銀行帶上存折去銀行
3.將存折遞給銀行職員
2.到相應窗口排隊4.銀行職員辦理取款事宜
日常生活中的程序5.簽名拿到錢并離開銀行
7什么是指令?做口述筆記……鍵入信函的內(nèi)容……發(fā)送傳真……口述2.信函_____________________________________________________3.傳真指令被逐條執(zhí)行程序員老板秘書程序:為了讓計算機執(zhí)行某些操作或解決某個問題而編寫的一系列有序指令的集合要執(zhí)行的一組指令程序計算機中的程序8本章概要1.1程序設計基礎1.2C語言程序簡介1.3編程環(huán)境及C程序執(zhí)行過程1.4編碼規(guī)范及編程習慣9程序設計語言:用于編寫程序,實現(xiàn)人與計算機“對話”的語言。目前,人們使用的程序設計語言有上百種,常用的也有幾十種,如BASIC、FORTRAN、PASCAL,以及C語言等。這些語言的表達形式接近于人的自然語言,都是高級程序設計語言(簡稱“高級語言”)。1.1程序設計基礎程序設計語言按照書寫形式和思維方式的不同,可分為低級語言和高級語言兩大類。低級語言包括機器語言和匯編語言。機器語言:以二進制代碼的形式來表示這些基本指令集合。它是計算機系統(tǒng)唯一能夠直接識別和執(zhí)行的程序設計語言。它的優(yōu)點是運算速度快,每條指令均為由0和1組合起來的代碼串,由操作碼和操作對象兩部分組成。1011100000000001000000000000010100000001000000001.1程序設計基礎匯編語言:由一組匯編指令構(gòu)成的語言,與機器語言相比,它可以用指令英文名稱的縮寫字符串來表示其所代表的操作,用標號和符號來代表地址、常量和變量。高級語言:高級程序設計語言(簡稱高級語言)是指用于描述計算機程序的類自然語言。它是程序設計發(fā)展的產(chǎn)物,它屏蔽了機器的細節(jié),提高了語言的抽象層次。高級語言采用接近自然語言和數(shù)學語言的語句,易學、易用、易維護,并且在一定程度上與機器無關(guān),給編程帶來了極大的方便。MOVAX,1ADDAX,1#include<stdio.h>main(){ printf("%d\n",1+1);}1.1程序設計基礎1.1程序設計基礎程序設計=數(shù)據(jù)結(jié)構(gòu)+算法算法
算法---解決問題的一種策略。算法的常見表示方法
---自然語言
---傳統(tǒng)流程圖
---N-S流程圖
13算法例1-1用自然語言描述求三個數(shù)中最大數(shù)的算法。輸入三個數(shù)num1、num2、num3之后,先求出三個數(shù)中兩個數(shù)num1和num2的較大數(shù)max2,再把這個較大數(shù)max2與第三個數(shù)num3比較,求出最大數(shù)max3。
14流程圖2例1-2用傳統(tǒng)流程圖描述求三個數(shù)中最大數(shù)的算法。
Start/EndSymbolSemanticProcessInput/OutputTestConnectorFlowofactivities15N-S流程圖例1-3用N-S流程圖描述求三個數(shù)中最大數(shù)的算法,如圖1-4所示。16本章概要1.1
程序設計基礎1.2C語言程序簡介1.3編程環(huán)境及C程序執(zhí)行過程1.4編碼規(guī)范及編程習慣171.2C語言程序簡介1C語言的產(chǎn)生和發(fā)展一切從一個叫“SpaceTravel”的電子游戲開始……為了讓他的游戲能在PDP-7上運行,KenThompson用匯編語言給PDP-7寫了一個操作系統(tǒng)——UNIX匯編太不好用了,Thompson需要高級語言試驗了一些高級語言,包括Fortran,都不理想他在BCPL基礎上,自己設計了一個B語言UNIX開始發(fā)展,B也不夠用了DennisRitchie加入,把B改造成C開始用C重寫UNIX1.2C語言程序簡介
隨著面向?qū)ο缶幊碳夹g(shù)的出現(xiàn),在進一步擴充和完善了C語言基礎上,又出現(xiàn)了C++。Java,C++等面向?qū)ο笳Z言(第四代語言)是C語言的發(fā)展。但是,C是C++的基礎,C++語言和C語言在很多方面是兼容的。在掌握了C語言后,再進一步學習C++,就能以一種熟悉的語法來學習面向?qū)ο蟮恼Z言,可達到事半功倍的目的。1.2C語言程序簡介是一種高級語言高級語言并不是“高級”,只是相對低級語言,在一個高的級別上進行編程歷史悠久,戰(zhàn)勛卓著誕生于上世紀70年代初,成熟于80年代(C89),修訂與90年代(C99)很多重量級軟件都是用C寫的上天入地,無所不能幾乎沒有不能用C寫出來的軟件,沒有不支持C的系統(tǒng)很多流行語言、新生語言都借鑒了它的思想、語法從C++,到Java,再到C#,還有php等1.2C語言程序簡介C程序的基本結(jié)構(gòu)#include<stdio.h>voidmain(){printf("HelloWorld\n");}以#開始的語句稱為預處理器指令#include語句不是必需的,但是,如果程序有該語句,就必須將它放在程序的開始處以.h為后綴的文件被稱為頭文件,可以是C程序中現(xiàn)成的標準庫文件,也可以是自定義的庫文件。stdio.h文件中包含了有關(guān)輸入輸出語句的函數(shù)
main()函數(shù)是C程序處理的起點。
main()函數(shù)可以返回一個值,也可以不返回值。如果某個函數(shù)沒有返回值,那么在它的前面有一個關(guān)鍵字void22C程序的基本結(jié)構(gòu)#include<stdio.h>voidmain(){printf("HelloWorld\n");}在函數(shù)定義的后面有一個左大括號,即{它表示函數(shù)的開始,后面是函數(shù)的主體大括號也可以用于將語句塊括起來在函數(shù)定義的結(jié)尾處有一個右大括號,即}在屏幕上產(chǎn)生一行輸出“Helloworld”,并換行(\n)
函數(shù)主體中的每個語句都以分號結(jié)束。C程序中的一個語句可以跨越多行,并且用分號通知編譯器該語句已結(jié)束。
運行結(jié)果:HelloWorld23C程序中的注釋#include<stdio.h>voidmain(){printf("HelloWorld\n");}//此程序用來打印HelloWorld單行注釋C程序可以包含注釋,以便向讀者作一般說明編譯器并不處理這些注釋/*此程序由×××編寫
用來打印輸出“HelloWorld”*/多行注釋24/**************************作者:創(chuàng)建日期:描述:……***************************/#include<頭文件>voidmain(){……}注釋在程序中添加注釋是一個好的編程習慣,可以增強程序的可讀性。/*”和“*/”必須成對使用,且“/”和“*”、以及“*”和“/”之間不能有空格,否則都出錯25技巧:為避免遺漏必須配對使用的符號,例如注釋符號、函數(shù)體的起止標識符(花括號)、圓括號等等,在輸入時,可連續(xù)成對地輸入這些起止標識符,然后再在其中進行插入來完成內(nèi)容的編輯。在起止標識符嵌套時,以及相距較遠時,這樣做更有必要。26編制C語言程序的基本步驟
編輯程序代碼的錄入,生成源程序*.c編譯語法分析查錯,翻譯生成目標程序*.obj鏈接與其它目標程序或庫鏈接裝配,生成可執(zhí)行程序*.exe運行開始編輯編譯有錯?鏈接執(zhí)行結(jié)果正確?結(jié)束源程序file.c目標程序file.obj庫函數(shù)和其它目標程序可執(zhí)行程序file.exe不正確正確有無調(diào)試C程序的流程編寫C程序的步驟
本章概要1.1程序設計基礎1.2C語言程序簡介1.3編程環(huán)境及C程序執(zhí)行過程1.4編碼規(guī)范及編程習慣28本章概要1.1程序設計基礎1.2C語言程序簡介1.3編程環(huán)境及C程序執(zhí)行過程1.4編碼規(guī)范及編程習慣29編碼規(guī)范及編程習慣
(1)一行只放一條語句。(2)養(yǎng)成隨時給程序加注釋的習慣。(3)程序的書寫要有層次感,該縮進的一定要縮進。(4)編寫函數(shù)時,變量定義部分和函數(shù)的執(zhí)行部分之間增加一空行,或者在程序的執(zhí)行部分按照完成的功能塊增加相應的空行,會增加程序的易讀性。(5)為變量起有意義的名字,既可以幫助程序員讀懂程序,也可以避免變量的重復亂用,導致程序的邏輯錯誤。
(6)在運算符和賦值符的兩邊加上一個空格會增加程序的易讀性。(7)以模塊化方式考慮程序結(jié)構(gòu),以函數(shù)形式書寫較復雜的程序。voidmain(){inti,sum;sum=0;for(i=1;i<=100;i++)if(i%2==0)sum+=i;printf("sum=%d",sum);}voidmain(){inti,sum;sum=0;for(i=1;i<=100;i++)if(i%2==0)sum+=i;printf("sum=%d",sum);}沒有層次感層次清晰學好C能做什么?系統(tǒng)軟件:操作系統(tǒng);應用軟件:圖像圖形處理,數(shù)據(jù)庫,嵌入式控制,參數(shù)采集,統(tǒng)計分析;適用平臺:Windows,Linux,Unix,…適用專業(yè):計算機、通信、控制、自動化、材料、生物工程、應用數(shù)學、信息與計算科學,信息管理….
…..----“學好數(shù)理化,走遍天下!”----“學好C語言,走遍天
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 《實驗室消毒滅菌》課件
- 《病媒生物控制》課件
- 單位管理制度合并選集人事管理篇
- 《倉庫管理的認識》課件
- 單位管理制度分享合集【人事管理篇】十篇
- 單位管理制度范例匯編【人事管理】十篇
- 做情緒的主人 高一上學期心理健康教育課
- 2024年農(nóng)業(yè)年終工作總結(jié)
- 2024年協(xié)輔警個人總結(jié)
- 《山東膠州秧歌》課件
- 工程預結(jié)算課件
- 酒店宴會合同范本
- 貨款互抵三方協(xié)議合同范本
- 七年級道德與法治論文2000字(合集六篇)
- 嚴重精神障礙患者健康管理服務規(guī)范
- 風險預測分析及風險與機遇評估分析表
- 高中日語宣講 試聽課件
- 壓力彈簧力度計算器及計算公式
- 新生兒窒息診斷地專家共識
- 2023年重慶市旅游業(yè)統(tǒng)計公報要點
- 器械清洗的資料
評論
0/150
提交評論