第1章 C語言程序設(shè)計基礎(chǔ)知識課件_第1頁
第1章 C語言程序設(shè)計基礎(chǔ)知識課件_第2頁
第1章 C語言程序設(shè)計基礎(chǔ)知識課件_第3頁
第1章 C語言程序設(shè)計基礎(chǔ)知識課件_第4頁
第1章 C語言程序設(shè)計基礎(chǔ)知識課件_第5頁
已閱讀5頁,還剩32頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

主講:高雁鳳郵箱:電話:86914551

C程序設(shè)計2012年2月21日第1章C語言程序設(shè)計基礎(chǔ)知識C程序設(shè)計成績評定:

總成績=平時成績(15%)+實(shí)驗(yàn)成績(15%)+期末考試(70%)

課時安排

課程總學(xué)時:68學(xué)時理論課:44學(xué)時實(shí)驗(yàn)課:24學(xué)時出勤+書面作業(yè)+回答問題上機(jī)操作+實(shí)驗(yàn)報告2第1章C語言程序設(shè)計基礎(chǔ)知識C程序設(shè)計教材(1)陸蓓:《C語言程序設(shè)計》,科學(xué)出版社,2009年。(2)陸蓓:《C語言程序設(shè)計習(xí)題答案與實(shí)驗(yàn)指導(dǎo)(第二版)》,科學(xué)出版社,2009年參考書

TheCProgrammingLanguage,SecondEdition,BrianW.Kernighan&DennisM.Ritchie,清華大學(xué)出版社,Prentice-HallInternational,Inc.,1997譚浩強(qiáng)編著:《C語言程序設(shè)計(第三版)》,清華大學(xué)出版社3第1章C語言程序設(shè)計基礎(chǔ)知識C程序設(shè)計教學(xué)要求掌握程序設(shè)計語言的基本知識常用算法初步的程序設(shè)計能力學(xué)習(xí)方法自主學(xué)習(xí)重視上機(jī)實(shí)踐(時間安排—

1:5)4第1章C語言程序設(shè)計基礎(chǔ)知識C程序設(shè)計如何盡快學(xué)會用C語言進(jìn)行程序設(shè)計?掌握C語言的規(guī)則、程序設(shè)計的方法和編程技巧親自動手模仿、改寫及編寫程序不斷編程實(shí)踐,逐步領(lǐng)會和掌握程序設(shè)計的基本思想和方法。5第1章C語言程序設(shè)計基礎(chǔ)知識目

第1章C語言程序設(shè)計基礎(chǔ)知識第2章基本數(shù)據(jù)類型與常用庫函數(shù)第3章表達(dá)式第4章控制結(jié)構(gòu)和語句第5章函數(shù)第6章數(shù)組第7章編譯預(yù)處理第8章指針第9章結(jié)構(gòu)體第11章文件6第1章C語言程序設(shè)計基礎(chǔ)知識第一章C語言程序設(shè)計基礎(chǔ)知識第1章C語言程序設(shè)計基礎(chǔ)知識本章內(nèi)容1.1計算機(jī)基礎(chǔ)知識

1.2C語言程序基本知識

1.3在計算機(jī)上執(zhí)行C語言程序第1章C語言程序設(shè)計基礎(chǔ)知識1.1計算機(jī)基礎(chǔ)知識

1.1.1數(shù)制按進(jìn)位的原則進(jìn)行計數(shù)逢N進(jìn)1

采用位權(quán)表示法常用計數(shù)制的基數(shù)和數(shù)字符號十進(jìn)制二進(jìn)制八進(jìn)制十六進(jìn)制基數(shù)數(shù)碼100~920,180~7160~9,A,B,C,D,E,F9第1章C語言程序設(shè)計基礎(chǔ)知識2751237121802912402202110示例:結(jié)果為:十進(jìn)制整數(shù)非十進(jìn)制整數(shù)余數(shù)法:除基數(shù)取余數(shù)、由下而上排列。數(shù)制間的轉(zhuǎn)換110第1章C語言程序設(shè)計基礎(chǔ)知識進(jìn)位法:用十進(jìn)制小數(shù)乘基數(shù),當(dāng)積為0或達(dá)到所要求的精度時,將整數(shù)部分由上而下排列。示例:

0.625

╳2

1.250整數(shù)為1

╳2

0.50整數(shù)為0

╳2

1.0

整數(shù)為1小數(shù)值為0結(jié)果為:0.101十進(jìn)制小數(shù)非十進(jìn)制小數(shù)數(shù)制間的轉(zhuǎn)換211第1章C語言程序設(shè)計基礎(chǔ)知識位權(quán)法:把各非十進(jìn)制數(shù)按權(quán)展開求和轉(zhuǎn)換公式:(F)x=an-1×xn-1+an-2×xn-2+...+a1×x1+a0×x0+a-1×x-1+...示例:

(1011.1)2=1×23+0×22+1×21+1×20+1

×2-1=8+0+2+1+0.5 =(11.5)10非十進(jìn)制數(shù)十進(jìn)制數(shù)數(shù)制間的轉(zhuǎn)換3第1章C語言程序設(shè)計基礎(chǔ)知識原碼:最高位為符號位,其余各位為數(shù)值本身的絕對值反碼:正數(shù):反碼與原碼相同負(fù)數(shù):符號位為1,其余位對原碼取反補(bǔ)碼:正數(shù):原碼、反碼、補(bǔ)碼相同負(fù)數(shù):最高位為1,其余位為原碼取反,再對整個數(shù)加11.1.2數(shù)值的表示方法

13第1章C語言程序設(shè)計基礎(chǔ)知識原碼反碼補(bǔ)碼+7-7111+0-0數(shù)的范圍01111111~(-127~+127)01111111~(-127~+127)01111111~(-128~+127)示例:用一字節(jié)表示數(shù)

14第1章C語言程序設(shè)計基礎(chǔ)知識1.1計算機(jī)基礎(chǔ)知識人—自然語言計算機(jī)—計算機(jī)程序什么是程序?什么是程序設(shè)計?程序就是為了完成某一任務(wù)而制定的一組操作步驟。例如:要計算長方形的面積,需要完成2個步驟:a.分別求出長方形的長和寬;b.根據(jù)面積=長*寬,計算長方形面積。計算機(jī)程序就是一組計算機(jī)能識別和執(zhí)行的指令序列。每一條指令使計算機(jī)執(zhí)行特定的操作。程序設(shè)計就是人們?yōu)橛嬎銠C(jī)編寫程序的過程,即設(shè)計、書寫、及檢查程序的過程。1.1.315第1章C語言程序設(shè)計基礎(chǔ)知識1.1計算機(jī)基礎(chǔ)知識程序設(shè)計所用的語言稱為程序設(shè)計語言。它是人與計算機(jī)進(jìn)行交流的工具,實(shí)際上也是人指揮計算機(jī)進(jìn)行工作的工具。計算機(jī)語言就是計算機(jī)系統(tǒng)能夠接受、理解和執(zhí)行的語言。什么是程序設(shè)計語言1.1.316第1章C語言程序設(shè)計基礎(chǔ)知識機(jī)器語言匯編語言高級語言面向過程面向?qū)ο驝PU指令系統(tǒng),由0、1序列構(gòu)成的指令碼組成如:10000000加

10010000減用助記符號描述的指令系統(tǒng)如ADDA,B面向機(jī)器的語言程序設(shè)計是數(shù)據(jù)被加工的過程程序設(shè)計關(guān)鍵是定義類,并由類派生對象程序設(shè)計語言的發(fā)展

1.1.41.1

計算機(jī)基礎(chǔ)知識17第1章C語言程序設(shè)計基礎(chǔ)知識1.1.5C語言出現(xiàn)的歷史背景C語言是國際上廣泛流行的計算機(jī)高級語言,它既可用來寫系統(tǒng)軟件,也可用來寫應(yīng)用軟件。C語言是貝爾實(shí)驗(yàn)室于20世紀(jì)70年代初期在B語言的基礎(chǔ)上設(shè)計出來的隨著UNIX的日益廣泛使用而迅速得到推廣后來,C語言又被多次改進(jìn),并出現(xiàn)了多種版本20世紀(jì)80年代初(1983年),ANSI根據(jù)C語言問世以來的各種版本對C語言進(jìn)行了改進(jìn)和擴(kuò)充,制定了ANSIC標(biāo)準(zhǔn)(并于1989年再次做了修訂)

1990年,C語言成為國際標(biāo)準(zhǔn)化組織(ISO)通過的標(biāo)準(zhǔn)語言。目前,在微機(jī)上廣泛使用的C語言編譯系統(tǒng)大多是以ANSIC為基礎(chǔ)進(jìn)行開發(fā)的。1.1計算機(jī)基礎(chǔ)知識18第1章C語言程序設(shè)計基礎(chǔ)知識1.2C語言程序基本知識例1.1屏幕上輸出:ThisisaCprogram.#include<stdio.h>void

main(){

printf("ThisisaCprogram.\n");}/*文件包含*//*主函數(shù)*//*函數(shù)體開始*//*輸出語句*//*函數(shù)體結(jié)束*/

說明:main-主函數(shù)名,void-函數(shù)類型每個C程序必須有一個主函數(shù)main{}是函數(shù)開始和結(jié)束的標(biāo)志,不可省每個C語句以分號結(jié)束使用標(biāo)準(zhǔn)庫函數(shù)時應(yīng)在程序開頭一行寫:

#include<stdio.h>1.2.1幾個簡單的C程序

19第1章C語言程序設(shè)計基礎(chǔ)知識例1.2求兩數(shù)之和

#include<stdio.h>

voidmain()/*求兩數(shù)之和*/

{

inta,b,sum;/*聲明,定義變量為整型*/

/*以下4行為C語句*/

a=123;

b=456;

sum=a+b;

printf(″sumis%d\n″,sum);

}說明:

/*……*/表示注釋。注釋只是給人看的,對編譯和運(yùn)行不起作用。所以可以用漢字或英文字符表示,可以出現(xiàn)在一行中的最右側(cè),也可以單獨(dú)成為一行。說明:

輸出一行信息:sumis5791.2C語言程序基本知識1.2.1幾個簡單的C程序

20第1章C語言程序設(shè)計基礎(chǔ)知識例1.3輸入兩個數(shù),求和

#include<stdio.h>

voidmain()/*求兩數(shù)之和*/

{

inta,b,sum;/*聲明,定義變量為整型*/

printf(″Inputtwonumbers:\n″);/*輸入提示*/

scanf(″%d%d″,&a,&b);/*屏幕上輸入2個數(shù)*/

sum=a+b;

printf(″%d+%d=%d\n″,a,b,sum);

}運(yùn)行結(jié)果:

Inputtwonumbers:

1213

12+13=251.2C語言程序基本知識1.2.1幾個簡單的C程序

21第1章C語言程序設(shè)計基礎(chǔ)知識例1.4求2個數(shù)中較大者

#include<stdio.h>

voidmain()/*主函數(shù)*/

{

inta,b,c;/*定義變量a、b、c*/

intmax(intx,inty);/*對被調(diào)用函數(shù)max的聲明*/

scanf(″%d,%d″,&a,&b);/*輸入變量a和b的值*/

c=max(a,b);/*調(diào)用max函數(shù),將得到的值賦給c*/

printf(″max=%d\n″,c);/*輸出c的值*/

}程序運(yùn)行情況如下:8,5↙(輸入8和5賦給a和b)max=8(輸出c的值)intmax(intx,inty){intz;if(x>y)z=x;else

z=y;return(z);}max(int

x,int

y)

max(a,b);

說明:本程序包括main和被調(diào)用函數(shù)max兩個函數(shù)。max函數(shù)的作用是將x和y中較大者的值賦給變量z。return語句將z的值返回給主調(diào)函數(shù)main。1.2.1幾個簡單的C程序

22第1章C語言程序設(shè)計基礎(chǔ)知識1.2.2簡單的C語言程序介紹:C程序是由函數(shù)構(gòu)成的。一個C源程序至少包含一個main函數(shù),也可以包含一個main函數(shù)和若干個其他函數(shù)。因此,函數(shù)是C程序的基本單位。被調(diào)用的函數(shù)可以是系統(tǒng)提供的庫函數(shù)(例如printf和scanf函數(shù)),也可以是用戶根據(jù)需要自己編制設(shè)計的函數(shù)(例如,例1.4中的max函數(shù))。C的函數(shù)庫十分豐富,ANSIC建議的標(biāo)準(zhǔn)庫函數(shù)中包括100多個函數(shù),TurboC和MSC4.0提供300多個庫函數(shù)。C的這種特點(diǎn)使得容易實(shí)現(xiàn)程序的模塊化。1.2C語言程序基本知識23第1章C語言程序設(shè)計基礎(chǔ)知識(2)一個函數(shù)由兩部分組成:

函數(shù)的首部(說明部分):存儲類型、數(shù)據(jù)類型、函數(shù)名、參數(shù)及類型說明

例1.4中的max函數(shù)首部intmax(intx,inty)

函數(shù)體:大括號內(nèi)的部分,若一個函數(shù)有多個大括號,則最外層的一對大括號為函數(shù)體的范圍。

函數(shù)體包括兩部分:

數(shù)據(jù)定義和聲明語句序列:必須位于可執(zhí)行語句之前,可缺省如:inta,b,c;

intmax(intx,inty);可執(zhí)行語句序列:由若干個語句組成??扇笔oiddump(){}

這是一個空函數(shù),什么也不做,但是合法的函數(shù)。24第1章C語言程序設(shè)計基礎(chǔ)知識1.2.3C語言程序結(jié)構(gòu)小結(jié)編譯預(yù)處理命令C語言本身沒有輸入輸出語句。輸入和輸出的操作是由庫函數(shù)scanf和printf等函數(shù)來完成的。C對輸入輸出實(shí)行“函數(shù)化”。#include<stdio.h>函數(shù)與主函數(shù)程序由一個或多個函數(shù)組成必須有且只能有一個主函數(shù)main()程序執(zhí)行從main開始,在main中結(jié)束,與main函數(shù)的位置無關(guān)其它函數(shù)通過嵌套調(diào)用得以執(zhí)行。程序語句C程序由語句組成C程序書寫格式自由,一行內(nèi)可以寫幾個語句

一個語句可以分寫在多行上每個語句和數(shù)據(jù)聲明的最后必須有一個”;”注釋/**/(或者//)為注釋,不能嵌套不產(chǎn)生編譯代碼25第1章C語言程序設(shè)計基礎(chǔ)知識習(xí)慣用小寫字母,大小寫敏感不使用行號,無程序行概念可使用空行和空格一個語句中不同成份之間應(yīng)使用空格隔開常用鋸齒形書寫格式編譯預(yù)處理命令通常應(yīng)放在源文件或源程序的最前面voidmain(){

……………….………………

…………..…………..

……………….

………………………….

……………….………………..}優(yōu)秀程序員的素質(zhì)之一:使用TAB縮進(jìn){}對齊有足夠的注釋有合適的空行1.2.4C程序的書寫要求26第1章C語言程序設(shè)計基礎(chǔ)知識1.3在計算機(jī)上執(zhí)行C語言程序1.3.1運(yùn)行C程序的步驟⑴上機(jī)輸入與編輯源程序⑵對源程序進(jìn)行編譯⑶與庫函數(shù)連接⑷運(yùn)行目標(biāo)程序27第1章C語言程序設(shè)計基礎(chǔ)知識1.3.2上機(jī)運(yùn)行C程序的方法1.3在計算機(jī)上執(zhí)行C語言程序目前使用的大多數(shù)C編譯系統(tǒng)都是集成環(huán)境(IDE)的??梢杂貌煌木幾g系統(tǒng)對C程序進(jìn)行操作。常用的C編譯系統(tǒng)有:?BorlandC++(簡稱BC++)?

TurboC2.0、TurboC++3.0(簡稱TC)?MicrosoftVisualC++(簡稱VC++)等。28第1章C語言程序設(shè)計基礎(chǔ)知識1.3在計算機(jī)上執(zhí)行C語言程序【第1步】雙擊桌面上的“MicrosoftVisualC++6.0”圖標(biāo),出現(xiàn)如圖所示的VisualC++6.0系統(tǒng)界面。

1.3.3在VC++6.0環(huán)境下編輯、編譯和運(yùn)行C程序

29第1章C語言程序設(shè)計基礎(chǔ)知識1.3在計算機(jī)上執(zhí)行C語言程序【第2步】從File菜單中選擇“New”命令,出現(xiàn)“New”對話框,從中選擇“Files”選項(xiàng)卡,選擇“C++SourceFile”選項(xiàng),如圖所示。1.3.3在VC++6.0環(huán)境下編輯、編譯和運(yùn)行C程序

30第1章C語言程序設(shè)計基礎(chǔ)知識1.3在計算機(jī)上執(zhí)行C語言程序【第3步】在出現(xiàn)的1.cpp編輯框中輸入和編輯程序,輸入并將文件存盤。注意:在輸入程序時要隨時保存程序文件(使用“Files”菜單中的“Save”命令,或單擊左上方的保存圖標(biāo)),以免出現(xiàn)意外導(dǎo)致程序丟失。1.3.3在VC++6.0環(huán)境下編輯、編譯和運(yùn)行C程序31第1章C語言程序設(shè)計基礎(chǔ)知識1.3在計算機(jī)上執(zhí)行C語言程序【第4步】在程序輸入完畢,選擇“Build”菜單中的“Compile1.cpp”命令,對源程序進(jìn)行編譯,如果沒有語法錯誤,產(chǎn)生了1.obj目標(biāo)文件。1.3.3在VC++6.0環(huán)境下編輯、編譯和運(yùn)行C程序32第1章C語言程序設(shè)計基礎(chǔ)知識1.3在計算機(jī)上執(zhí)行C語言程序【第5步】選擇“Build”菜單中的“Build1.exe”命令,與庫函數(shù)連接,生成1.c1.exe可執(zhí)行文件。1.3.3在VC++6.0環(huán)境下編輯、編譯和運(yùn)行C程序33第1章C語言程序設(shè)計基礎(chǔ)知識1.3在計算機(jī)上執(zhí)行C語言程序【第6步】選擇“Build”菜單中的“Execute1.exe”命令,執(zhí)行該應(yīng)用程序。1.3.3在VC++6.0環(huán)境下編輯、編譯和運(yùn)行C程序34第1章C語言程序設(shè)計基礎(chǔ)知識語言簡潔、緊湊、靈活(32個關(guān)鍵字,9種控制語句)運(yùn)算符(34種)和數(shù)據(jù)類型豐富程序設(shè)計結(jié)構(gòu)化、模塊化語法限制不太嚴(yán)格,程序設(shè)計自由度大C語言允許直接訪問計算機(jī)內(nèi)部地址,能比其他語言更容易執(zhí)行硬件操作。生成目標(biāo)代碼質(zhì)量高,程序執(zhí)行效率高可移植性好C語言中的32個關(guān)鍵字(由系統(tǒng)定義,不能重作其它定義)

autobreakcasecharconstcontinuedefaultdodoubleelseenumexternfloatforgotoifintlongregisterreturnshortsignedsizeof

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論