編程基礎(chǔ)知識(shí).ppt_第1頁(yè)
編程基礎(chǔ)知識(shí).ppt_第2頁(yè)
編程基礎(chǔ)知識(shí).ppt_第3頁(yè)
編程基礎(chǔ)知識(shí).ppt_第4頁(yè)
編程基礎(chǔ)知識(shí).ppt_第5頁(yè)
已閱讀5頁(yè),還剩31頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、C+簡(jiǎn)單程序設(shè)計(jì),復(fù)習(xí)內(nèi)容,C+語(yǔ)言程序設(shè)計(jì),2,本章主要內(nèi)容,運(yùn)算符與表達(dá)式 算法的基本控制結(jié)構(gòu) 結(jié)構(gòu)體,算術(shù)運(yùn)算符與算術(shù)表達(dá)式,基本算術(shù)運(yùn)算符 + - * /(若整數(shù)相除,結(jié)果取整) %(取余,操作數(shù)為整數(shù)) 優(yōu)先級(jí)與結(jié)合性 先乘除,后加減,同級(jí)自左至右 +, -(自增、自減) 例:i+; -j;,Page 3,基本數(shù)據(jù)類型和表達(dá)式,賦值運(yùn)算符和賦值表達(dá)式 簡(jiǎn)單的賦值運(yùn)算符=,舉例n = n + 5 表達(dá)式的類型等號(hào)左邊對(duì)象的類型 表達(dá)式的值等號(hào)左邊對(duì)象被賦值后的值,Page 4,基本數(shù)據(jù)類型和表達(dá)式,5,賦值運(yùn)算符和賦值表達(dá)式 復(fù)合的賦值運(yùn)算符,復(fù)合運(yùn)算符:+=, -=, *=, /=,

2、 %=, 例a += 3 等價(jià)于 a = a + 3x *= y + 8 等價(jià)于 x = x * (y + 8),基本數(shù)據(jù)類型和表達(dá)式,6,逗號(hào)運(yùn)算和逗號(hào)表達(dá)式,格式 表達(dá)式1,表達(dá)式2 求解順序及結(jié)果 先求解1,再求解2,最終結(jié)果為表達(dá)式2的值 例 a = 3 * 5 , a * 4 最終結(jié)果為60,Page 6,基本數(shù)據(jù)類型和表達(dá)式,7,關(guān)系運(yùn)算與關(guān)系表達(dá)式,關(guān)系運(yùn)算是比較簡(jiǎn)單的一種邏輯運(yùn)算,優(yōu)先次序?yàn)椋?= = != 優(yōu)先級(jí)相同(高) 優(yōu)先級(jí)相同(低) 關(guān)系表達(dá)式是一種最簡(jiǎn)單的邏輯表達(dá)式 其結(jié)果類型為 bool,值只能為 true 或 false。 例如:a b,c = a + b,x

3、+ y = 3,基本數(shù)據(jù)類型和表達(dá)式,8,邏輯運(yùn)算與邏輯表達(dá)式,邏輯運(yùn)算符 !(非) ,基本數(shù)據(jù)類型和表達(dá)式,10,sizeof 運(yùn)算符,語(yǔ)法形式sizeof (類型名)或 sizeof 表達(dá)式 結(jié)果值:“類型名”所指定的類型或“表達(dá)式”的結(jié)果類型所占的字節(jié)數(shù)。 例: sizeof(short) sizeof x,基本數(shù)據(jù)類型和表達(dá)式,基本輸入輸出,輸入/輸出格式定義如下 : 向標(biāo)準(zhǔn)輸出設(shè)備(顯示器)輸出 例:int x; cout x;,cin變量名; cout變量名或常量;,開(kāi)發(fā)環(huán)境,例1-2 創(chuàng)建一個(gè)控制臺(tái)應(yīng)用程序,當(dāng)其運(yùn)行時(shí)在屏幕上顯示“Hello, World!”。,#include

4、 void main() coutHello World!endl; /在屏幕上輸出“Hello World!,14,順序結(jié)構(gòu) 分支結(jié)構(gòu) 循環(huán)結(jié)構(gòu),算法的基本控制結(jié)構(gòu),15,如何解決多分支問(wèn)題?,例 輸入兩個(gè)整數(shù),比較兩個(gè)數(shù)的大小。,算法的基本控制結(jié)構(gòu),#include using namespace std; int main() int x,y; coutxy; if (x!=y) if (xy) coutyendl; else coutxyendl; else coutx=yendl; ,16,運(yùn)行結(jié)果1: Enter x and y:5 8 xy,17,18,一般形式 switch (

5、表達(dá)式) case 常量表達(dá)式 1:語(yǔ)句1 case 常量表達(dá)式 2:語(yǔ)句2 case 常量表達(dá)式 n:語(yǔ)句n default : 語(yǔ)句n+1 ,switch 語(yǔ)句,執(zhí)行順序 以case中的常量表達(dá)式值為入口標(biāo)號(hào),由此開(kāi)始順序執(zhí)行。因此,每個(gè)case分支最后應(yīng)該加break語(yǔ)句。,19,特殊的多分支結(jié)構(gòu),例 輸入一個(gè)06的整數(shù),轉(zhuǎn)換成星期輸出。,#include using namespace std; int main() int day; cin day; switch (day) case 0: cout Sunday endl; break; case 1: cout Monday e

6、ndl; break; case 2: cout Tuesday endl; break; case 3: cout Wednesday endl; break; case 4: cout Thursday endl; break; case 5: cout Friday endl; break; case 6: cout Saturday endl; break; default: cout Day out of range Sunday . Saturday endl; break; return 0; ,21,while 語(yǔ)句,形式 while (表達(dá)式) 語(yǔ)句,執(zhí)行順序 先判斷表達(dá)式的

7、值,若為 true 時(shí),執(zhí)行語(yǔ)句。,算法的基本控制結(jié)構(gòu),22,do-while 語(yǔ)句,一般形式 do 語(yǔ)句 while (表達(dá)式),執(zhí)行順序 先執(zhí)行循環(huán)體語(yǔ)句,后判斷條件。表達(dá)式為 true 時(shí),繼續(xù)執(zhí)行循環(huán)體 與while語(yǔ)句的比較: while 語(yǔ)句執(zhí)行順序 先判斷表達(dá)式的值,為true時(shí),再執(zhí)行語(yǔ)句,算法的基本控制結(jié)構(gòu),對(duì)比下列程序:,程序1: #include using namespace std; int main() int i, sum = 0; cin i; while (i = 10) sum += i; i+; cout sum= sum endl; return 0;

8、,算法的基本控制結(jié)構(gòu),程序2: #include using namespace std; int main() int i, sum = 0; cin i; do sum += i; i+; while (i = 10); cout sum= sum endl; return 0; ,23,24,for 語(yǔ)句,for (初始語(yǔ)句;表達(dá)式1;表達(dá)式2) 語(yǔ)句,算法的基本控制結(jié)構(gòu),例: for(i=1;i=10;i+) cout*; for(i=1;i=10;i+) cout*; cout$;,25,break 和 continue 語(yǔ)句,break語(yǔ)句 使程序從循環(huán)體和switch語(yǔ)句內(nèi)跳出,

9、繼續(xù)執(zhí)行邏輯上的下一條語(yǔ)句。不宜用在別處。 continue 語(yǔ)句 結(jié)束本次循環(huán),接著判斷是否執(zhí)行下一次循環(huán)。,算法的基本控制結(jié)構(gòu),26,關(guān)于break 和 continue 語(yǔ)句的例子,#include using namespace std; void main() int x=1; for(int i=0;i6;i+) if(i%2) continue; if(i%3) break; x+; couti=i;x=xendl; ,27,函數(shù)的聲明,函數(shù)是面向?qū)ο蟪绦蛟O(shè)計(jì)中,對(duì)功能的抽象 函數(shù)聲明的語(yǔ)法形式 類型標(biāo)識(shí)符 函數(shù)名(形式參數(shù)表) 語(yǔ)句序列 ,函數(shù)的聲明與使用,是被初始化的內(nèi)部變量

10、,壽命和可見(jiàn)性僅限于函數(shù)內(nèi)部,若無(wú)返回值,寫(xiě)void,28,例 編寫(xiě)一個(gè)求x的n次方的函數(shù),#include double power(double x, int n); int main() cout5 to the power 2 is power(5,2)endl; double power(double x, int n) double val=1.0; while (n-) val=val*x; return(val); ,函數(shù)的聲明與使用,29,運(yùn)行結(jié)果: 5 to the power 2 is 25,例 編寫(xiě)一個(gè)求x的n次方的函數(shù),函數(shù)的聲明與使用,30,結(jié)構(gòu)體結(jié)構(gòu)的聲明,結(jié)構(gòu)的

11、概念 結(jié)構(gòu)是由不同數(shù)據(jù)類型的數(shù)據(jù)組成的集合體。 聲明結(jié)構(gòu)類型 struct 結(jié)構(gòu)名 數(shù)據(jù)類型 成員名 1; 數(shù)據(jù)類型 成員名 2; : 數(shù)據(jù)類型 成員名 n; ;,自定義數(shù)據(jù)類型,31,結(jié)構(gòu)體結(jié)構(gòu)的聲明,舉例: struct student /學(xué)生信息結(jié)構(gòu)體 int num; /學(xué)號(hào) char name20; /姓名 char gender; /性別 int age; /年齡 float score; /成績(jī) char addr30; /住址 ;,自定義數(shù)據(jù)類型,32,結(jié)構(gòu)體結(jié)構(gòu)變量說(shuō)明,變量說(shuō)明形式 結(jié)構(gòu)名 結(jié)構(gòu)變量名; 注意: 結(jié)構(gòu)變量的存儲(chǔ)類型概念、它的壽命、可見(jiàn)性及使用范圍與普通變量完

12、全一致。 結(jié)構(gòu)變量說(shuō)明在結(jié)構(gòu)類型聲明之后,二者也可同時(shí)進(jìn)行。 結(jié)構(gòu)變量占內(nèi)存大小可用 sizeof 運(yùn)算求出: sizeof(運(yùn)算量),自定義數(shù)據(jù)類型,33,結(jié)構(gòu)體結(jié)構(gòu)變量的初始化和使用,初始化 說(shuō)明結(jié)構(gòu)變量的同時(shí)可以直接設(shè)置初值。 使用 結(jié)構(gòu)體成員的引用形式:結(jié)構(gòu)變量名.成員名,自定義數(shù)據(jù)類型,34,例,結(jié)構(gòu)體變量的初始化和使用 #include #include using namespace std; struct student /學(xué)生信息結(jié)構(gòu)體 int num;/學(xué)號(hào) char name20;/姓名 char gender;/性別 int age;/年齡 stu=97001,Lin Lin,F,19; int main() coutsetw(7)stu.numsetw(20) setw(3)stu.sexsetw(3)stu.age; ,自定義數(shù)據(jù)類型,運(yùn)行結(jié)果: 97001 Lin Lin F 19,作業(yè),求表達(dá)式1-2+3-4+99-1

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論