版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
C語言程序設(shè)計為什么要學(xué)習(xí)C語言?(1)計算機相關(guān)專業(yè):
其他高級語言的基礎(chǔ),與其他語言進行混合編程(2)非計算機理工專業(yè):喬布斯說過:每個人都應(yīng)該學(xué)習(xí)編程,因為它教會你如何思考。C語言編程---教會編程思路、方法、設(shè)計模式IOS、Android底層開發(fā)---C語言
編程語言受歡迎程度排行2023年1月TOP10語言C語言的設(shè)計者兩個骨灰級游戲玩家無心插柳柳成蔭1969年,ken夢想能遨游宇宙,
設(shè)計了一款模擬在太陽系航行
的電子游戲—SpaceTravel,
1971年dmr加入游戲在PDP-7小型機上開發(fā),因
為這臺機器免費,但免費的機
器沒有操作系統(tǒng)玩游戲前,先給PDP-7做個操作系統(tǒng),命名為UNIX無心插柳柳成蔭匯編編寫UNIX太慢,而一般的高級語言難以實現(xiàn)匯編語言的某些功能Dmr改造B語言,設(shè)計了一種新的高級語言,命名C語言,把UNIX的90%以上代碼用C改寫1983年,因為UNIX和C語言的巨大成功,ken和dmr共同獲得當(dāng)年度計算機界最高獎—圖靈獎C語言適合做什么?選語言的標(biāo)準——適合的才是最好的?。?)編寫系統(tǒng)軟件(例如OS)和工具軟件(2)運行效率要求較高的系統(tǒng)設(shè)備驅(qū)動程序,嵌入式系統(tǒng)(機器人、手機和智能家電)高性能、實時系統(tǒng)我能學(xué)好C語言嗎?C語言枯燥不好學(xué)數(shù)學(xué)和英語不好能學(xué)好C語言嗎?只要有小學(xué)四年級的水平和基礎(chǔ)就能學(xué)好C語言!——啊哈磊(全國信息學(xué)奧林匹克競賽NOI金牌教練)C語言程序設(shè)計
課程目標(biāo)
熟記C語言的基本概念熟悉VisualC++的上機操作環(huán)境會讀、會編、會調(diào)試C程序課程要求
多上機實踐
考核形式機考(50%)+平時(50%)硬件系統(tǒng)(Hardware)軟件系統(tǒng)(Software)內(nèi)存儲器隨機存儲器(RAM)只讀存儲器(ROM)輸入設(shè)備:鍵盤鼠標(biāo)掃描儀輸出設(shè)備:顯示器打印機繪圖儀中央處理器(CPU)
運算器控制器系統(tǒng)軟件應(yīng)用軟件高速緩存(Cache)主機外設(shè)外存:軟盤硬盤光盤優(yōu)盤網(wǎng)絡(luò)設(shè)備:網(wǎng)絡(luò)適配器調(diào)制解調(diào)器集線器操作系統(tǒng):WindowsUNIXLinuxDOS語言處理程序:CJavaVBVF實用程序:診斷程序排錯程序等通用應(yīng)用軟件:辦公軟件包等專用應(yīng)用軟件:各企業(yè)單位的管理信息系統(tǒng)等計算機系統(tǒng)知識回顧C語言與自然語言的比較
自然語言
C語言信息交流(地位平等)人-機對話(命令方式)(有思維、推理能力)(無思維、推理能力)語法規(guī)則、句法規(guī)則靈活語法規(guī)則、句法規(guī)則固定(可省略、顛倒)(一般不可省略、顛倒,必須按部就班)如:走,去曬太陽!如:x=a+b
去曬太陽,走!scanf(“%d%d”,a,b);表達方式多樣算法多樣√√scanf(“%d%d”,&a,&b);x=a+b;學(xué)習(xí)要點:熟記C語言的語法、句法學(xué)會算法分析與算法設(shè)計本課重點:第二章~第九章本課難點:第六章、第七章、第八章第一章C語言概述本章要點C語言的特點
C程序的結(jié)構(gòu)
C程序的上機步驟1.1
C語言出現(xiàn)的歷史背景C語言是國際上廣泛流行的高級語言。C語言是在B語言的基礎(chǔ)上發(fā)展起來的。1983年,美國國家標(biāo)準化協(xié)會(ANSI)制定了新的標(biāo)準ANSIC,比標(biāo)準C有了很大的發(fā)展。1987年,ANSI公布了新標(biāo)準——87ANSIC。1990年,國際標(biāo)準化組織接受了87ANSIC為ISOC的標(biāo)準(ISO9899—1990)。1994年,ISO又修訂了C語言標(biāo)準。目前流行的C語言編譯系統(tǒng)大多是以ANSIC為基礎(chǔ)進行開發(fā)的。1.2C語言的特點(1)語言簡潔、緊湊,使用方便、靈活。
32個關(guān)鍵字、9種控制語句,程序形式自由。(2)運算符豐富。(3)數(shù)據(jù)類型豐富,具有現(xiàn)代語言的各種數(shù)據(jù)結(jié)構(gòu)。(4)具有結(jié)構(gòu)化的控制語句,是完全模塊化和結(jié)構(gòu)化的語言。(5)語法限制不太嚴格,程序設(shè)計自由度大。(6)允許直接訪問物理地址,能進行位操作,能實現(xiàn)匯編語言的大部分功能,可直接對硬件進行操作。兼有高級和低級語言的特點。(7)目標(biāo)代碼質(zhì)量高,程序執(zhí)行效率高。只比匯編程序生成的目標(biāo)代碼效率低10%-20%。(8)程序可移植性好(與匯編語言比)。基本上不做修改就能用于各種型號的計算機和各種操作系統(tǒng)。1.3簡單的C語言程序幾個簡單的C語言程序例子例1.1
#include<stdio.h>intmain(){printf("ThisisaCprogram.\n");return0;}/*文件包含*//*主函數(shù)*//*函數(shù)體開始*//*輸出語句*//*返回語句*//*函數(shù)體結(jié)束*/說明:main-主函數(shù)名,int-函數(shù)類型每個C程序必須有一個主函數(shù)main{}是函數(shù)開始和結(jié)束的標(biāo)志,不可省每個C語句以分號結(jié)束使用標(biāo)準庫函數(shù)時應(yīng)在程序開頭一行寫:
#include<stdio.h>說明:
本程序的作用是輸出一行信息:ThisisaCprogram.例1.2求兩數(shù)之和
#include<stdio.h>
intmain()/*求兩數(shù)之和*/
{
inta,b,sum;/*聲明,定義變量為整型*/
/*以下3行為C語句*/
a=123;b=456;
sum=a+b;
printf(″sumis%d\n″,sum);
return0;
}說明:
/*……*/表示注釋。注釋只是給人看的,對編譯和運行不起作用。所以可以用漢字或英文字符表示,可以出現(xiàn)在一行中的最右側(cè),也可以單獨成為一行。說明:
輸出一行信息:sumis579例1.3求2個數(shù)中較大者。
#include<stdio.h>
intmain()/*主函數(shù)*/
{
intmax(intx,inty);/對被調(diào)用函數(shù)max的聲明*/
inta,b,c;/*定義變量a、b、c*/
scanf(″%d,%d″,&a,&b);/*輸入變量a和b的值*/
c=max(a,b);
/*調(diào)用max函數(shù),將得到的值賦給c*/
printf(″max=%d\n″,c);/*輸出c的值*/
return0;
}程序運行情況如下:8,5↙(輸入8和5賦給a和b)max=8(輸出c的值)intmax(intx,inty){intz;if(x>y)z=x;elsez=y;return(z);}說明:本程序包括main和被調(diào)用函數(shù)max兩個函數(shù)。max函數(shù)的作用是將x和y中較大者的值賦給變量z。return語句將z的值返回給主調(diào)函數(shù)main。C程序小結(jié):(1)C程序是由函數(shù)構(gòu)成的。這使得程序容易實現(xiàn)模塊化。(2)一個函數(shù)由兩部分組成:
函數(shù)首部:如intmax(intx,inty)
函數(shù)體:花括號內(nèi)的部分。若一個函數(shù)有多個花括號,則最外層的一對花括號為函數(shù)體的范圍。函數(shù)體包括:聲明部分:inta,b,c,可省執(zhí)行部分:由若干語句組成,可省注意:函數(shù)的聲明部分和執(zhí)行部分都可缺省,例如:intdump(){}
這是一個空函數(shù),什么也不做,但是是合法的函數(shù)。(3)C程序總是從main函數(shù)開始執(zhí)行的,與main函數(shù)的位置無關(guān)。(4)C程序書寫格式自由,一行內(nèi)可以寫幾個語句,一個語句可以分寫在多行上,C程序沒有行號。(5)每個語句和數(shù)據(jù)聲明的最后必須有一個分號。(6)C語言本身沒有輸入輸出語句。輸入和輸出的操作是由庫函數(shù)scanf和printf等函數(shù)來完成的。C對輸入輸出實行“函數(shù)化”。使用輸入輸出函數(shù)時必須在程序開頭插入引用庫函數(shù)所在頭文件的聲明。(7)用/*…*/或//做注釋。1.4運行C程序的步驟與方法1.4.1運行C程序的步驟1.4.2常用IDE1.4.3Dev-C++介紹1.4.4Dev-C++安裝1.4.5Dev-C++使用1.4.1運行C程序的步驟上機輸入與編輯源程序?qū)υ闯绦蜻M行編譯與庫函數(shù)連接運行目標(biāo)程序1.4.2常用IDE目前使用的大多數(shù)C編譯系統(tǒng)都是集成環(huán)境(IDE)的。可以用不同的編譯系統(tǒng)對C程序進行操作。常見的有TurboC、VisualC++、QtCreator、Code::Blocks、Dev-C++等。1.4.3Dev-C++介紹Dev-C++是Windows環(huán)境下的一個輕量級C/C++免費開源的IDE開發(fā)環(huán)境,它遵守GPL許可協(xié)議,是一款自由軟件。Dev-C++使用MingW64/TDM-GCC等編譯器,遵循C99標(biāo)準,同時兼容C90標(biāo)準。官方最新版為Dev-C++5.11。Dev-C++安裝卸載方便,打開和運行速度都非??欤δ芎唵螌嵱?。開發(fā)環(huán)境包括多頁面窗口、工程管理、調(diào)試器等,集成了C/C++編譯器、自定義編譯器配置、調(diào)試等功能,提供高亮度語法顯示,安裝與調(diào)試方便,支持多國語言,是C語言初學(xué)者的首選開發(fā)工具。1.4.3Dev-C++介紹Dev-C++工具具有代碼編寫、代碼分析、代碼編譯和調(diào)試等功能,又具有體積小、易上手等特點,是適合C語言初學(xué)者使用的輕量級開發(fā)工具。盡管Dev-C++5.11在2016年已停止,第三方DevC++工具功能更強大,比如基于原版DevC++4.9的RedPandaDevC++6.7,增加了代碼自動補全,并修復(fù)了一些DevC++的bug等,但是作為初學(xué)者,還是建議以原版學(xué)習(xí)為宜。本課選用官方最新的Dev-C++5.11作為開發(fā)環(huán)境1.4.4Dev-C++安裝(p11-p13)(1)打開Dev-C++的官網(wǎng)下載地址/projects/orwelldevcpp/,進入軟件下載頁面,如圖所示。單擊圖中的【Download】按鈕,選擇文件存放路徑,開始下載軟件安裝包。
(2)下載完成后,開始安裝軟件。安裝比較簡單,雙擊軟件安裝包文件打開安裝程序,將彈出“InstallerLanguage”對話框,用戶可在該窗口選擇語言。此處保持默認選項“English”。(3)單擊步驟(2)中的【OK】按鈕,進入“LicenseAgreement”窗口。該窗口用于展示許可證協(xié)議,如圖所示。(4)單擊步驟(3)中的【IAgree】按鈕,接受許可證協(xié)議,進入“ChooseComponents”窗口,在該窗口可選擇Dev-C++的組件。單擊該窗口的下拉列表,選擇【Full】,安裝所有組件,如圖所示。(5)單擊步驟(4)中的【Next】按鈕,進入“ChooseInstallLocation”窗口,設(shè)置Dev-C++安裝路徑,如圖所示??蓡螕魣D中的【Browse】按鈕自行選擇安裝路徑,亦可使用默認安裝路徑。此處保持默認設(shè)置。(6)單擊圖步驟(5)中的【Install】按鈕,開始安裝Dev-C++。安裝完成后的界面如圖所示。如果步驟(6)中勾選了“RunDev-C++5.11”,那么單擊【Finish】按鈕后會彈出首次運行配置的對話框,可以為Dev-C++設(shè)置語言和主題,具體如圖所示。Dev-C++編輯界面包含菜單欄、快捷按鈕、項目管理區(qū)、代碼編輯區(qū)、編譯信息顯示區(qū)5個部分。(1)菜單欄:Dev-C++軟件、編譯器
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 打架保證書告別沖動珍愛生命
- 苗木采購合同范本格式格式
- 短期借款合同
- 防火重于泰山生命高于一切
- 生鮮雞蛋買賣協(xié)議
- 飼料購銷半年合同
- 電信服務(wù)合同法律適用規(guī)定
- 惠州二手房買賣合同簽訂步驟
- 標(biāo)準施工招標(biāo)文件設(shè)計
- 公共照明工程招標(biāo)文件
- 市人大常委會辦公廳關(guān)于人大會議籌備情況報告供借鑒
- 吊籃安裝合同范文
- 【甲乳外科-甲狀腺-課件-幻燈】超聲引導(dǎo)下甲旁亢熱消融治療
- 軟件開發(fā)項目的監(jiān)理規(guī)劃
- 送教上門情況記錄表送教活動記錄六篇.doc
- 戴煒棟英語語言學(xué)概論Chapter 1
- 2020年廣東省中考數(shù)學(xué)試卷
- 廣東省義務(wù)教育階段學(xué)生學(xué)籍卡
- 小區(qū)會所經(jīng)營方案(開業(yè)投資分析)
- 加氣混凝土砌塊施工方法
- 銷售冠軍團隊銷售職場培訓(xùn)動態(tài)PPT
評論
0/150
提交評論