




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第2章順序結(jié)構(gòu)程序設(shè)計(jì)2.1 C程序結(jié)構(gòu)2.2 基本數(shù)據(jù)類型、變量與常量2.3 賦值運(yùn)算符與賦值表達(dá)式2.4 算術(shù)運(yùn)算符與算術(shù)表達(dá)式2.5 逗號(hào)運(yùn)算與逗號(hào)表達(dá)式主要內(nèi)容2.6 運(yùn)算符的優(yōu)先級(jí)與結(jié)合性2.7 混合運(yùn)算時(shí)數(shù)據(jù)類型的轉(zhuǎn)換2.8 語句和塊2.9 數(shù)據(jù)的輸入與輸出2.10 順序結(jié)構(gòu)程序設(shè)計(jì)綜合舉例主要內(nèi)容(續(xù))2.1 C程序結(jié)構(gòu)舉例介紹C語言的程序結(jié)構(gòu)。例2-1 從鍵盤輸入半徑,求圓的周長(zhǎng)和面積。算法思路: radius:存放從鍵盤輸入的半徑; 計(jì)算周長(zhǎng):perimeter=2*radius*PI; 計(jì)算面積:area=PI*radius*radius, 輸出perimeter和area
2、的值不確定性列公式#include double PI=3.14;void main( ) int radius; double perimeter,area; printf(Input a radius:); scanf(%d,&radius); perimeter=2*radius*PI; area=PI*radius*radius; printf(The perimeter is %.2f , The area is %.2fn,perimeter,area);聲明變量radius提示輸入輸入數(shù)據(jù)賦給radius計(jì)算周長(zhǎng)和面積輸出結(jié)果預(yù)處理命令全局變量聲明函數(shù)定義2.1 C程序結(jié)構(gòu)C源程
3、序由三個(gè)要素組成:(1) 預(yù)處理命令。C編譯程序?qū)υ闯绦蚓幾g前,先由預(yù)處理器對(duì)預(yù)處理命令進(jìn)行預(yù)處理。(2)全局聲明。包括全局變量聲明和函數(shù)原型聲明。 (3)函數(shù)定義。 一個(gè)C語言程序由一個(gè)或多個(gè)函數(shù)組成的,其中只能有一個(gè)main函數(shù)。 函數(shù)由一組語句組成。 比語句更小的語法單位:表達(dá)式、變量、常量和關(guān)鍵字等。2.1.1 C字符集大小寫的英文字母:AZ,az數(shù)字字符:09特殊字符: 空格 ! % & _(下劃線) + * = - / ; ., ( ) 2.1.2 詞法記號(hào)關(guān)鍵字(Keyword) 又稱為保留字,C語言預(yù)定的具有固定含義的一些單詞 例如:數(shù)據(jù)類型修飾符int,控制語句return等
4、 auto break case char continue const default double do else float for if int long NULL return switch shortsigned true this unsigned void while2.1.2 詞法記號(hào)標(biāo)識(shí)符(Identifier)以字母和下劃線開始,大小寫敏感,最長(zhǎng)32個(gè)字符。以大寫字母、小寫字母、下劃線或數(shù)字09組成。直觀,見名知意,便于記憶和閱讀最好使用英文單詞或其組合,忌使用漢語拼音 不宜混淆 如1與l,o與0不允許使用關(guān)鍵字作為標(biāo)識(shí)符的名字 int, float, for, whil
5、e, if等例:判斷下列標(biāo)識(shí)符號(hào)合法性,并標(biāo)出不合法的標(biāo)示符。 sum Sum M.D.John day Date 3days student_name #33 lotus_1_2_3 char ab _above $123M.D.John3days#33char$123ab2.1.2 詞法記號(hào)2.1.2 詞法記號(hào)運(yùn)算符(Operator)34種,詳見P200頁附錄A分隔符(Separator) 空格、回車/換行、逗號(hào)等 其它符號(hào) 大花括號(hào)和 /*和*/是程序注釋所需的定界符數(shù)據(jù)(Data)變量(Variable)常量(Constant)2.2 數(shù)據(jù)類型、常量和變量2.2.1 基本數(shù)據(jù)類型2.
6、2.2 常量2.2.3 變量2.2.4 符號(hào)常量2.2.5 指針與指針變量2.2 數(shù)據(jù)類型、常量和變量數(shù)據(jù)為什么要區(qū)分類型?不同類型的數(shù)據(jù)代表不同的數(shù)據(jù)表示形式合法的取值范圍占用內(nèi)存空間大小可參與的運(yùn)算種類 數(shù)據(jù)類型基本類型構(gòu)造類型指針類型空類型整型實(shí)型(浮點(diǎn)型)字符型枚舉類型數(shù)組類型結(jié)構(gòu)體類型共用體類型單精度實(shí)型雙精度實(shí)型基本整型長(zhǎng)整型短整型無符號(hào)整型數(shù)據(jù)類型(Data Type)如何衡量數(shù)據(jù)類型所占空間大???常用的單位如下:b,B,KB,MB,GB,TB bit,中文叫法:位Byte,中文叫法:字節(jié)Kilobyte(KB),中文叫法:KMegabyte(MB),中文叫法:兆Gigabyte
7、(GB),中文叫法:GTerabyte(TB),中文叫法:T1 TB = 1,024 GB1 GB = 1,024 MB1 MB= 1,024 KB1 KB = 1,024 B1 B = 8 b如何衡量數(shù)據(jù)類型所占空間大???一個(gè)位有多大?只能是0或者1,這叫二進(jìn)制一個(gè)字節(jié)有多大?保存一個(gè)字符(英文字母、數(shù)字、符號(hào))ASCII(美國(guó)標(biāo)準(zhǔn)信息交換碼)編碼見附錄A,常用字符與ASCII碼對(duì)照表兩個(gè)字節(jié)保存一個(gè)漢字GB編碼可以表示0255之間的整數(shù)2.2.1 基本數(shù)據(jù)類型表2-1 C的基本數(shù)據(jù)類型(32位機(jī))數(shù)據(jù)類型關(guān)鍵字占用位數(shù)取值范圍短整型short16-3276832767,即-2-15215-
8、1整型int32-2147483648 2147483647,即-2-31231-1長(zhǎng)整型long32-2-31231-1浮點(diǎn)型float321.2*10-383.4*1038雙精度浮點(diǎn)型double642.3*10-3081.7*10308字符型char8-128127,即-2-727-1整型(integer)整型:有符號(hào)整數(shù),允許取值為整數(shù) 如: 123,567整型的分類:整型(int): 占4個(gè)字節(jié)短整型(short int):占2個(gè)字節(jié),通常簡(jiǎn)寫為short長(zhǎng)整型(long int): 占4 (8)個(gè)字節(jié),通常簡(jiǎn)寫為long數(shù)據(jù)類型修飾符signed用來修飾char、int、short
9、和long,說明他們是有符號(hào)的整數(shù)(正整數(shù)、0和負(fù)整數(shù))。有符號(hào)數(shù)在計(jì)算機(jī)內(nèi)以二進(jìn)制補(bǔ)碼形式存儲(chǔ)的,最高位表示符號(hào)位(0為正數(shù),1為負(fù)數(shù))。一般缺省都是有符號(hào)的,所以這個(gè)修飾符通常省略。int型:最大:32767最小:-3276801111111111111111000000000000000數(shù)據(jù)類型修飾符unsigned用來修飾char、int、short和long,說明他們是無符號(hào)的整數(shù)(正整數(shù)和0)。無符號(hào)型在機(jī)內(nèi)只能存放正數(shù),最高位也來表示數(shù)值的。當(dāng)數(shù)據(jù)占用同樣內(nèi)存位數(shù)時(shí),無符號(hào)型數(shù)值范圍比有符號(hào)數(shù)擴(kuò)大一倍。數(shù)據(jù)類型修飾符unsigned int型:最大:65535最小:0111111
10、11111111110000000000000000擴(kuò)充的整型類型有符號(hào)基本整型 signed int;無符號(hào)基本整型 unsigned int;有符號(hào)短整型 signed short int;無符號(hào)短整型 unsigned short int;有符號(hào)長(zhǎng)整型 signed long int;無符號(hào)長(zhǎng)整型 unsigned long int ;二進(jìn)制存放與溢出(1)10= (0000 0000 0000 0001)20000000000000001(-1)10= 1111111111111111(1111 1111 1111 1111)2(65535)10= 1111111111111111(1
11、111 1111 1111 1111)2 當(dāng)65535按unsigned int型理解時(shí),仍為65535;而當(dāng)按int型理解時(shí),被當(dāng)作-1的補(bǔ)碼。字符型(char)字符型char的取值為單個(gè)字符。 例如: A、 用ASCII編碼表示一個(gè)字符,每個(gè)字符占用1個(gè)字節(jié),總共可以表示256個(gè)不同的字符。char 類型前可用signed和unsigned加以修飾。 例如: char ch=127; signed char ch=-128; unsigned char ch=255;思考:unsigned char 范圍?浮點(diǎn)型(float point)浮點(diǎn)類型:允許取值為帶小數(shù)的實(shí)數(shù)雙精度浮點(diǎn)型doub
12、le單精度浮點(diǎn)型float 如 123.46double比float的精度更高(即小數(shù)的有效位數(shù)更多),表示數(shù)據(jù)的范圍也更大。2.2.2 常量常量(Constant)在程序執(zhí)行過程中其值不變的量。常量包括以下幾種:整型常量浮點(diǎn)常量字符常量字符串常量整型常量(short,int,long)整型常量18、-31long int型常量 123l、123L、123456l、123456Lunsigned int型常量 123u、 123U整型常量的類型根據(jù)其值所在范圍確定其數(shù)據(jù)類型在整型常量后加字母l或L,認(rèn)為它是long int 型常量整型常量的表示形式整型常量的表示形式:十進(jìn)制八進(jìn)制十六進(jìn)制整型常
13、量的表示形式十進(jìn)制形式 : 若干個(gè)09的數(shù)字 如:100,-50, 0 八進(jìn)制形式: 以0開頭的若干個(gè)07數(shù)字 如:0123 表示十進(jìn)制數(shù) 83, -011 表示十進(jìn)制數(shù)-9。 010和10大小不一樣 整型常量的表示形式十六進(jìn)制形式 : 用0 x或0X開頭的若干個(gè) 09,af,AF的數(shù)字 如: 0 x2F 表示十進(jìn)制的數(shù)字47。 0 x123 表示十進(jìn)制數(shù)291, -0X12 表示十進(jìn)制數(shù)-18。例:12與12L例:30000 為int型 65536 為long int 型整型常量的表示形式例 :0524 為int型,在內(nèi)存中是如何表示的?0101010000000001425例 :01736
14、L 為long int 型110111100000001100000000000000006371注意事項(xiàng)Example: #include void main() short int a ; printf(Input :); scanf(%d,&a); printf(a=%dn,a); 運(yùn)行結(jié)果: Input:12345 a=12345 Input:1234567 a=-10617 整型整數(shù) short int 的范圍: -32768+32767Because: 12345的補(bǔ)碼是0011000000111001 1234567的補(bǔ)碼是100101101011010000111 截去多余部份
15、(超過2個(gè)字節(jié)的左邊部分)后 其原碼為 1010100101111001(-10617)可用下圖表示: 32767 32766 32765 -32766 -32767 -32768輸入(Input:) 輸出(a=) 32767 32767 32768 -32768 32769 -32767 32770 -32766 -32768 -32768 -32769 32767 -32770 32766 有趣的結(jié)果何謂類型溢出(Overflow)?C語言直接提供的任何類型都有取值范圍。當(dāng)向其賦超過此范圍的數(shù)值,就會(huì)產(chǎn)生數(shù)值溢出,得到一個(gè)不正確的結(jié)果。short int的范圍是-3276832767如果超
16、出取值范圍,給它一個(gè)小于-32768或者大于32767的數(shù)會(huì)如何呢?小蛇能吞下大象嗎?類型溢出的解決方案?解決方案:預(yù)先估算運(yùn)算結(jié)果的可能范圍,采用取值范圍更大的類型。1+2+3+1!+2!+3!+13+23+33+如果不需要處理負(fù)數(shù),則采用無符號(hào)類型。在運(yùn)算還沒開始之前就判斷運(yùn)算數(shù)是否在合理的取值范圍內(nèi)。如果超出,則停止運(yùn)算,轉(zhuǎn)錯(cuò)誤處理。浮點(diǎn)型常量 (float,double)浮點(diǎn)型常量:可以含有小數(shù)部分的數(shù)值常量。根據(jù)占用內(nèi)存長(zhǎng)度的不同,分為:?jiǎn)尉雀↑c(diǎn)常量:占用32位內(nèi)存,用F、f表示。 如:19.4F,3.0513E3f,8701.52f雙精度浮點(diǎn)常量:占用64位內(nèi)存,用帶D或d或不加
17、后綴(缺省)的數(shù)值表示 如:2.433E-5D,700041.273d,3.1415。long double型常量 123.45l、456.78L、4.5e3L因?yàn)樽帜竘和數(shù)字1容易混淆,所以當(dāng)用l做后綴時(shí),常使用大寫形式 浮點(diǎn)型常量 (float,double)浮點(diǎn)常量?jī)煞N表示形式:十進(jìn)制小數(shù)形式和指數(shù)形式。十進(jìn)制小數(shù)形式:包括符號(hào)+與-,09十個(gè)數(shù)字以及小數(shù)點(diǎn).。 如:0.123, 1.23, 123.0。指數(shù)形式:包括符號(hào)+與-,09十個(gè)數(shù)字,小數(shù)點(diǎn).以及e(或E)。 如:0.123e3 表示0.123103 -35.4E-5 表示-35.410-5, 其中e或E之前必須有數(shù)字,且e或E
18、后面的指數(shù)必須為整數(shù)。 如:e-5, 1.2E-3.5 不正確 浮點(diǎn)型常量 (float,double) 由于計(jì)算機(jī)系統(tǒng)分配給一個(gè)數(shù)據(jù)的存儲(chǔ)空間是有限的。一般來說,一個(gè)實(shí)型常量無法轉(zhuǎn)換成與之等值的有限位的二進(jìn)制數(shù)據(jù),其有限位以后的數(shù)字將被舍去,由此就會(huì)產(chǎn)生舍入誤差。例 :/下列程序的功能是將10個(gè)實(shí)型數(shù)0.1進(jìn)行累加,然后將累加結(jié)果輸出。#include stdio.hvoid main() int k; /*定義整型變量k*/ double x,z; /*定義雙精度是型變量x與z*/ z=1.0; /*實(shí)數(shù)1.0賦給變量z*/ x=0.0; for (k=0; k10; k+) x=x+0.
19、1; /*10個(gè)0.1累加到變量x中*/ printf(z=%20.17fn,z); /*輸出變量z的值*/ printf(x=%20.17fn,x); /*輸出變量x的值*/ 運(yùn)行這個(gè)程序后,輸出的結(jié)果如下: z= 1.00000000000000000 x= 0.99999999999999989字符常量 (Character)字符常量:用一對(duì)單引號(hào)括起的單個(gè)字符。一個(gè)字符用一個(gè)字節(jié)存儲(chǔ)。字符常量的值:該字符的ASCII碼值如: A 65, a 97, 0 48, n 10如: 101 A 012 n 376 x61 a 60 0 483 ()例: A 101 x41 65字符常量 (Ch
20、aracter)就是一個(gè)普通整數(shù),也可以參與各種數(shù)學(xué)運(yùn)算每個(gè)字符具有一個(gè)0255之間的數(shù)值,可查ASCII表注意:1和整數(shù)1的區(qū)別字符1只是代表一個(gè)形狀為1的符號(hào),在需要時(shí)按原樣輸出,在內(nèi)存中以ASCII碼形式存儲(chǔ),占1個(gè)字節(jié)整數(shù)1是以整數(shù)存儲(chǔ)方式,占1個(gè)字節(jié)0 0 1 1 0 0 0 10 0 0 0 0 0 0 1字符常量 (Character)轉(zhuǎn)義字符用開頭的字符 例如,n,代表1個(gè)字符一些特殊字符(無法從鍵盤輸入或者另有它用)用轉(zhuǎn)義字符表示,含義如表2-2。表2-2 常用轉(zhuǎn)義字符 轉(zhuǎn)義字符含義 ASCII碼(十進(jìn)制)三位八進(jìn)制數(shù)表示的字符十六進(jìn)制數(shù)表示的字符b退格08010 x8t水平
21、制表符09011x9n換行10012xar回車13015xd字符92134x5c雙引號(hào)34042x22單引號(hào)39047x270NULL00000 x0ddd三位八進(jìn)制數(shù)表示的字符xdd兩位十六進(jìn)制數(shù)表示的字符轉(zhuǎn)義字符舉例例1:void main() printf(101 x42 Cn); printf(C Programn); printf(Turbo C);運(yùn)行結(jié)果:(屏幕顯示)A B CC ProgramTurbo C轉(zhuǎn)義字符舉例例2: void main() printf(Yb=n); 運(yùn)行結(jié)果:屏幕顯示:=打印機(jī)輸出:例3:#include void main( ) printf(Ho
22、w are you?n); printf(I am fine.nn); /* 橫向跳格符t,使跳到下一個(gè)輸出區(qū) */ printf(How are you?t); printf(I am fine.nn); /*退格符b,使當(dāng)前的輸出位置退一格,即輸出的起始位置左移一位*/ printf( How are you?n); printf( bI am fine.nn);/* 回車符r,使當(dāng)前輸出位置回到本行開頭 */ printf( I am fine.); printf(rHow are you?nn);/* 多個(gè)轉(zhuǎn)義字符的混合運(yùn)用 */ printf(note:n a stibbkrpn);
23、什么時(shí)候要使用轉(zhuǎn)義字符?轉(zhuǎn)義字符只在特殊情況下才使用:C程序中需要實(shí)現(xiàn)某些特定打印或顯示動(dòng)作時(shí) 如 printf(123t56n);C程序中需要打印或顯示以下三個(gè)字符時(shí) (斜杠) (雙引號(hào)) (單引號(hào)) 如 printf(Youre a a bad egg! );C程序中需要打印或顯示ASCII表中非鍵盤字符時(shí) 如 printf(Look 16 and x80 ! );注意:使用轉(zhuǎn)義字符時(shí),后的八進(jìn)制或十六進(jìn)制數(shù)不應(yīng)大于char類型所允許的范圍(十進(jìn)制值256)。 字符串常量(String)用雙引號(hào)括起的一串字符(可以0個(gè))I am a string表示空字符串轉(zhuǎn)義字符也可以在字符串中使用引號(hào)
24、只作為字符串開始和結(jié)束的標(biāo)志C語言內(nèi)部自動(dòng)用0表示字符串的結(jié)束除注釋外,是唯一可以出現(xiàn)中文的地方x和x是不同的里定義了一系列專門的字符串處理函數(shù)邏輯(布爾)型常量 boolean在程序控制中經(jīng)常用到布爾常量。例如: If (條件) 動(dòng)作1 else 動(dòng)作2布爾常量的值:true(真)和false(假)。C語言中將布爾類型映射為數(shù)值類型: true 用非0的整數(shù)表示 false 用0表示 如: 3+1 = 4 結(jié)果為true,通常表示1。 int a= 23 結(jié)果為false ,通常表示0。 2.2.3 變量變量在程序執(zhí)行過程中其值可以改變的量。 因此用來記錄運(yùn)算中間結(jié)果或保存數(shù)據(jù)。變量的聲明:
25、 數(shù)據(jù)類型 變量名1,變量名2,變量名n;決定分配字節(jié)數(shù)和數(shù)的表示范圍合法標(biāo)識(shí)符short,int,long, float,double,char,unsigned 復(fù)合類型2.2.3 變量例: int a,b; double data;編譯時(shí),對(duì)變量聲明語句將根據(jù)其類型分配存儲(chǔ)空間。變量的名實(shí)際上對(duì)應(yīng)空間的地址,變量的值對(duì)應(yīng)空間的內(nèi)容。在對(duì)程序編譯連接時(shí)由編譯系統(tǒng)給每一個(gè)變量名分配對(duì)應(yīng)的內(nèi)存地址。從變量中取值,實(shí)際上是通過變量名找到相應(yīng)的內(nèi)存地址,從該存儲(chǔ)單元中讀取數(shù)據(jù)。 a:(2000) b:(3000) data:(4000)4字節(jié)8字節(jié)4字節(jié)2.2.3 變量基本類型與變量的分配空間數(shù)據(jù)
26、類型關(guān)鍵字占用位數(shù)短整型short16整型int32長(zhǎng)整型long32浮點(diǎn)型float32雙精度浮點(diǎn)型double64字符型char82.2.3 變量例如: short s; /給s變量分配兩個(gè)字節(jié),占用2000-2019單元 s=1234; 圖2-1 變量與內(nèi)存單元的映射關(guān)系2.2.3 變量變量的使用:先申明,后使用例1: int student;stadent=19; 變量名和變量值的概念2.2.3 變量例2: float a,b,c;c=a%b; 2.2.3 變量變量定義位置:一般放在函數(shù)開頭void main() int a,b=2; float data; a=1; data=(a+
27、b)*1.2; printf(data=%fn,data);變量定義可執(zhí)行語句2.2.3 變量變量的初始化:聲明變量的同時(shí)指定變量初值格式: 數(shù)據(jù)類型 變量名=初始值;不被初始化的變量,其值為危險(xiǎn)的隨機(jī)數(shù)char esc = a;int i = 1;int sum = 0;float eps = 1.0e-5;2.2.3 變量例如:利用變量t交換變量x和y的值t = x; x = y; y =t;tyx變量的值主要通過賦值運(yùn)算改變。 使用變量要注意不要對(duì)變量所占的內(nèi)存空間字節(jié)數(shù)想當(dāng)然用sizeof獲得變量或者數(shù)據(jù)類型的長(zhǎng)度sizeof運(yùn)算符:返回操作數(shù)存儲(chǔ)空間的大小使用形式: sizeof(t
28、ype) 或 sizeof(var_name)求出的結(jié)果為表達(dá)式值所屬類型或者類型占用的字節(jié)數(shù)sizeof運(yùn)算符也可以出現(xiàn)在表達(dá)式中。 例如,x=sizeof(float)-2; printf(%d,sizeof(double);參見教材P22頁例2-2注意!為什么要用sizeof獲得類型或變量的字長(zhǎng)?因?yàn)橥N類型在不同的平臺(tái)其占字節(jié)數(shù)不盡相同。比如int在16位、32位和64位系統(tǒng)分別占2、4和8個(gè)字節(jié)。現(xiàn)象與危害:在平臺(tái)間移植時(shí)會(huì)出現(xiàn)問題,導(dǎo)致數(shù)據(jù)丟失或者溢出。解決方案:用,并且只用sizeof獲得字長(zhǎng)。變量的類型整型變量定義形式: int 變量表列;實(shí)型變量單精度定義形式: float
29、變量表列; 具有67位有效數(shù)字雙精度定義形式: double 變量表列;具有1516位有效數(shù)字變量的類型字符型變量用于存放字符型常量定義方式: char 變量表列;字符變量存放字符ASCII碼char與int數(shù)據(jù)間可進(jìn)行算術(shù)運(yùn)算例: a=D; /* a=68; */ x=A+5; /* x=65+5; */ s=!+G; /* s=33+71;*/沒有字符串變量,用字符數(shù)組存放字符量與字符串的存儲(chǔ)區(qū)別字符 A65 01000001占1字節(jié) 65 78 83 73 32 67 0 A N S I C字串 ANSI C 占7個(gè)字節(jié)實(shí)型數(shù)據(jù)提供的有效數(shù)字位數(shù)#include void main()
30、float a; double b; a = 123456.789e4; b = 123456.789e4; printf(%fn%fn, a,b);float型數(shù)據(jù)提供7位有效數(shù)字double型數(shù)據(jù)提供16位有效數(shù)字使用不當(dāng)導(dǎo)致舍入誤差char型與int型之間的關(guān)系 例:小寫字母轉(zhuǎn)換為大寫字母 #include void main() char ch = b; printf(%c, %dn, ch, ch); ch = b - 32; printf(%c, %dn, ch, ch);b, 98B, 66 #include void main() char ch = b; printf(%c,
31、 %dn, ch, ch); ch = b - (a - A); printf(%c, %dn, ch, ch);b, 98B, 66 一個(gè)整型數(shù)據(jù)占4B,而字符型數(shù)據(jù)只占1B(只能存放0255范圍內(nèi)的整數(shù)),因此,在將整型數(shù)據(jù)以字符形式輸出時(shí),只取低字節(jié)中的數(shù)據(jù)作為ASCII碼字符輸出。#include void main() int x; x=1348; printf(x=%cn,x);運(yùn)行結(jié)果為: x=D1348在內(nèi)存中為:00000000010001000000010100000000閱讀下列C程序:#include stdio.hvoid main() long x,y,z; x =
32、 -0 xffffL; y = -0 xffL; z = -0 xffffffffL; printf(x=%6ld y=%6ld z=%6ldn,x,y,z); x = -0 xffff; y = -0 xff; z = -0 xffffffff; printf(x=%6ld y=%6ld z=%6ldn,x,y,z);有如下C程序:#include stdio.hvoid main() short int x; unsigned y; long z; x=65535; y=65535; z=65535; printf(x=%dn,x); printf(y=%un,y); printf(z=%
33、ldn,z); 它們?cè)谟?jì)算機(jī)中用二進(jìn)制表示如下:變量x 1111111111111111變量y 0000000000000000 1111111111111111變量z 0000000000000000 1111111111111111%d為基本整型輸出格式說明符%u為無符號(hào)基本整型輸出格式說明符%ld為長(zhǎng)整型輸出格式說明符2.2.4 符號(hào)常量符號(hào)常量:為常量起一個(gè)名字符號(hào)常量聲明格式 : const 數(shù)據(jù)類型 常量名=缺省值;注意: 符號(hào)常量聲明時(shí)一定要賦初值,而在程序的中間不能改變其值。例如:const double PI=3.14159;float r, area;r=4.5;area=
34、PI*r*r;內(nèi)存和地址計(jì)算機(jī)內(nèi)的存儲(chǔ)部件,所有指令和數(shù)據(jù)都保存在內(nèi)存里速度快,但是掉電即失可以隨機(jī)訪問只要指明要訪問的內(nèi)存單元的地址,就可立即訪問到該單元地址是一個(gè)無符號(hào)整數(shù),其字長(zhǎng)一般與主機(jī)相同內(nèi)存中的每個(gè)字節(jié)都有唯一的一個(gè)地址地址按字節(jié)編號(hào),按類型分配空間尋址方式如何讀寫內(nèi)存中的數(shù)據(jù)?通過變量的地址訪問變量所在的存儲(chǔ)單元兩種尋址方式直接(尋址)訪問通過變量地址直接存取變量?jī)?nèi)容(引用變量的方式是通過變量名,由系統(tǒng)自動(dòng)完成變量名與其存儲(chǔ)地址之間的轉(zhuǎn)換)間接(尋址)訪問通過指針變量來間接存取它所指向的變量(它首先將變量的地址存放在一個(gè)變量(存放地址的變量成為指針變量)中,然后通過存放變量地址的
35、指針變量來引用變量。)2.2.5 指針與指針變量1.指針的概念指針是內(nèi)存單元的地址。一個(gè)變量的地址稱為該變量的指針。地址運(yùn)算符&:求變量的地址。 &變量名例如:int a; double b; &a,表示變量a的地址3000 &b,表示變量b的地址4000。 a:(3000) b:(4000)8字節(jié)4字節(jié)2.2.5 指針與指針變量2. 指針變量用于存放某個(gè)內(nèi)存單元地址的變量。(指向某內(nèi)存單元的指針) 例如:char c = K; char *p = &c; p(4000) c(2000)7520002.2.5 指針與指針變量(1)指針變量的聲明格式: 數(shù)據(jù)類型 *變量名;*: 聲明一個(gè)指針類型
36、的變量;數(shù)據(jù)類型: 指針變量所指向的變量的數(shù)據(jù)類型。例如: int i; int *p1; float f1; float *p2; 2.2.5 指針與指針變量(2) 指針變量的賦值指針變量的初始化可為地址常量或變量地址,不能是普通整數(shù)??蔀榭誑ULL(表示不指向任何對(duì)象)初始化的一般形式:數(shù)據(jù)類型 *指針名=初始地址值 ;賦給指針變量,不是賦給目標(biāo)變量例: int i; int *p=&i;變量必須已說明過類型應(yīng)一致例: int *p=&i; int i;2.2.5 指針與指針變量例: int i; int *p=&i; int *q=p;用已初始化指針變量作初值例: int *p; p=1
37、000; ()例: void main( ) int i=10; int *p; *p=i; printf(%d,*p); .200020192019整型變量i10指針變量p2019隨機(jī)危險(xiǎn)!例: void main( ) int i=10,k; int *p; p=&k; *p=i; printf(%d,*p); 指針變量必須先賦值,再使用int i,*p;p=&i;int *p;float *q;p=q;int i;float *p;p=&i;int *p;p=100;判斷是真?是假?指針變量只存放地址!一個(gè)指針變量不能指向與其類型不同的變量!我是真的,你猜對(duì)了嗎?應(yīng)在類型相同的指針變量之
38、間賦值2.2.5 指針與指針變量(3) 取內(nèi)容運(yùn)算 * 取指針變量所指的對(duì)象變量。格式為: * 指針變量例如: char c,*p=&c; *p=a; 這里*p 等同于c 例如: float f, *pf=&f; *pf =5.6f; *pf = *pf +4.4f;*pf表示變量f含義:取變量的地址單目運(yùn)算符優(yōu)先級(jí): 2結(jié)合性:自右向左含義:取指針?biāo)赶蜃兞康膬?nèi)容單目運(yùn)算符優(yōu)先級(jí): 2結(jié)合性:自右向左兩者關(guān)系:互為逆運(yùn)算&與*操作符.200020192019整型變量i變量i_pointer20192000指針變量10理解i_pointer &i &(*i_pointer)i *i_point
39、er *(&i)=i_pointer 指針變量,它的內(nèi)容是地址量*i_pointer指針的目標(biāo)變量,它的內(nèi)容是數(shù)據(jù)&i_pointer指針變量占用內(nèi)存的地址200010i_pointer*i_pointer&i_pointeri指針變量變量變量地址(指針)變量值地址存入指針變量指向直接訪問與間接訪問直接訪問:按變量地址存取變量值間接訪問:通過存放變量地址的變量去訪問變量.200020192019整型變量i變量i_pointer20192000指針變量10例 i=3;直接訪問3例 *i_pointer=20; 間接訪問20零指針與空類型指針零指針:(空指針)定義: 指針變量值為零表示: int
40、*p=0;p指向地址為0的單元,系統(tǒng)保證該單元不作它用表示指針變量值沒有意義#define NULL 0int *p=NULL:p=NULL與未對(duì)p賦值不同用途: 避免指針變量的非法引用在程序中常作為狀態(tài)比較 例 int *p; while(p!=NULL) . void *類型指針表示: void *p; 使用時(shí)要進(jìn)行強(qiáng)制類型轉(zhuǎn)換零指針與空類型指針例 char *p1; void *p2; p1=(char *)p2; p2=(void *)p1;表示不指定p是指向哪一種類型數(shù)據(jù)的指針變量例:指針的概念void main() int a; int *pa=&a; a=10; printf(a
41、:%dn,a); printf(*pa:%dn,*pa); printf(&a:%x(hex)n,&a); printf(pa:%x(hex)n,pa); printf(&pa:%x(hex)n,&pa);.f86f8e整型變量a10指針變量paf8af86運(yùn)行結(jié)果:a:10*pa:10&a:f86(hex)pa:f86(hex)&pa:f8a(hex)例:輸入兩個(gè)數(shù),并使其從大到小輸出void main() int *p1,*p2,*p,a,b; scanf(%d,%d,&a,&b); p1=&a; p2=&b; if(ab) p=p1; p1=p2; p2=p; printf(a=%d,b
42、=%dn,a,b); printf(max=%d,min=%dn, *p1,*p2);.指針變量p1 指針變量p20002019201920192019 指針變量p2 整型變量b 整型變量a5920192019201920192019運(yùn)行結(jié)果:a=5,b=9 max=9,min=5指針與其它類型變量的對(duì)比共性在內(nèi)存中占據(jù)一定大小的存儲(chǔ)單元先定義,后使用特殊性 它的內(nèi)容只能是地址,而不能是數(shù)據(jù)必須初始化后才能使用,否則指向不確定的存儲(chǔ)單元,對(duì)該空間進(jìn)行訪問,將可能造成危險(xiǎn)可參與的運(yùn)算:加、減一個(gè)整數(shù),自增、自減、關(guān)系、賦值只能指向同一基類型的變量例2-3 常量、變量、指針變量的聲明、初始化及使用
43、。2.3 賦值運(yùn)算符與賦值表達(dá)式簡(jiǎn)單賦值運(yùn)算符符號(hào):=格式:變量標(biāo)識(shí)符=表達(dá)式作用:將一個(gè)數(shù)據(jù)(常量或表達(dá)式)賦給一個(gè)變量例 a=3; d=func(); c=d+2;2.3 賦值運(yùn)算符與賦值表達(dá)式復(fù)合賦值運(yùn)算符符號(hào):+= -= *= /= %= = &= = |=含義:exp1 op = exp2 exp1 = exp1 op exp2 n = n + 2;n + = 2; x * = y + 8; x = x * (y + 8); x % = 3;x = x % 3;2.3 賦值運(yùn)算符與賦值表達(dá)式說明:結(jié)合方向:自右向左左側(cè)必須是變量,不能是常量或表達(dá)式賦值轉(zhuǎn)換規(guī)則使賦值號(hào)右邊表達(dá)式值自動(dòng)
44、轉(zhuǎn)換成其左邊變量的類型例 3=x-2*y; a+b=3;例 float f; int i; i=10; f=i;則 f=10.0例 int i; i=2.56; /*結(jié)果i=2;*/2.3 賦值運(yùn)算符與賦值表達(dá)式賦值表達(dá)式的值與變量值相等,且可嵌套。 a=b=c=5 a=5+(c=6) a=(b=10)/(c=2)/*表達(dá)式值為5,a,b,c值為5*/*表達(dá)式值11,c=6,a=11*/*表達(dá)式值5,a=5,b=10,c=2*/ a=12; a+=a-=a*a/*a=-264等價(jià)于a=a+(a=a-(a*a)*/ int a=2; a%=4-1; a+=a*=a-=a*=3; /*a=0等價(jià)于
45、 a=a+(a=a*(a=a-(a=a*3)*/例:閱讀程序,寫出結(jié)果并演算#include void main() int a=10,b=10; printf(%dt ,a+=a-=a*a); printf(%d,b+=b-=b*=b); 舉一反三:計(jì)算a=3時(shí),a*=4+(a%=2)的結(jié)果。a=5a=-180 b=02.3 賦值運(yùn)算符與賦值表達(dá)式2.4 算術(shù)運(yùn)算符與算術(shù)表達(dá)式表達(dá)式:由運(yùn)算符、操作數(shù)(常量、變量、函數(shù)調(diào)用)和圓括號(hào)組成的式子。表達(dá)式的書寫形式:中綴式: a+b后綴式: ab+前綴式: +ab例如: int a=1; c=(-a*b+c+67)*56;int b=3;int
46、c=0;2.4 算術(shù)運(yùn)算符與算術(shù)表達(dá)式算術(shù)運(yùn)算符: + - * / % + -加、減、乘、除、求余運(yùn)算 自加 自減四則混合運(yùn)算中,先算乘除,后算加減,按從左向右的順序計(jì)算,左結(jié)合優(yōu)先級(jí): - + - * / % + - (2) (3) (4)常用的標(biāo)準(zhǔn)數(shù)學(xué)函數(shù)函數(shù)名功 能函數(shù)名功 能sqrt(x)計(jì)算x的平方根,x應(yīng)大于等于0 exp(x)計(jì)算ex的值fabs(x)計(jì)算x的絕對(duì)值pow(x,y)計(jì)算xy的值log(x)計(jì)算lnx的值sin(x)計(jì)算sinx的值,x為弧度值log10(x)計(jì)算lgx的值cos(x)計(jì)算cosx的值,x為弧度值2.4 算術(shù)運(yùn)算符與算術(shù)表達(dá)式說明:-可為單目運(yùn)算符時(shí)
47、,右結(jié)合性兩整數(shù)相除,結(jié)果為整數(shù)%要求兩側(cè)均為整型數(shù)據(jù)例 5/2 = -5/2.0 =例 5%2 = -5%2 = 1%10 = 5%1 = 5.5%2 =2 -2.51-110()增一和減一運(yùn)算符n+(后綴),n-,(前綴)+n,-n+讓參與運(yùn)算的變量加1,-讓參與運(yùn)算的變量減1作為后綴運(yùn)算符時(shí),先取n的值,然后加/減1作為前綴運(yùn)算符時(shí),先加/減1,然后取n的值n = n+;n = n;n+;增一和減一運(yùn)算符n+,n-,+n,-n+讓參與運(yùn)算的變量加1,-讓參與運(yùn)算的變量減1作為后綴運(yùn)算符時(shí),先取n的值,然后加/減1作為前綴運(yùn)算符時(shí),先加/減1,然后取n的值m = +n;n+;m = n;增
48、一和減一運(yùn)算符例 i=3; printf(%d ,-i+); printf( %d,i); + - 不能用于常量和表達(dá)式,如5+,(a+b)+ -結(jié)合方向: 自右向左 -(i+)注意-3 4例 int i=3; printf(%d,%d,-i+,i); -3,3說明printf函數(shù)的輸出項(xiàng)掃描順序是自右向左的。#include void main() int a=1,b=1; printf(+a=%d,b+=%dn,+a,b+); printf(a=%d,b=%dn,a,b); printf(-a=%d,b-=%dn,-a,b-); printf(a=%d,b=%dn,a,b);運(yùn)行結(jié)果:+a
49、=2,b+=1a=2, b=2-a=1,b-=2a=1, b=12.4 算術(shù)運(yùn)算符與算術(shù)表達(dá)式算術(shù)表達(dá)式指用算術(shù)運(yùn)算符將運(yùn)算對(duì)象連接起來的式子對(duì)于算術(shù)表達(dá)式要注意以下幾個(gè)問題:1)注意表達(dá)式中各種運(yùn)算符的運(yùn)算順序,必要時(shí)應(yīng)加括號(hào),例如,(a+b)/(c+d)a+b/c+d。2)注意表達(dá)式中各運(yùn)算對(duì)象的數(shù)據(jù)類型,特別是整型相除。C語言規(guī)定,兩個(gè)整型量相除,其結(jié)果仍為整型。例如, 7/6的值為1; 4/7的值為0; (1/2)+(1/2)的值為0,而不是1。自動(dòng)類型轉(zhuǎn)換同種數(shù)據(jù)類型的運(yùn)算結(jié)果,還是該類型不同種數(shù)據(jù)類型的運(yùn)算結(jié)果,是兩種類型中取值范圍更大的那種long double double f
50、loat long int short chardoublelongunsignedintchar,short精度低精度高float說明:必定的轉(zhuǎn)換運(yùn)算對(duì)象類型不同時(shí)轉(zhuǎn)換自動(dòng)類型轉(zhuǎn)換 特別需要說明的是,在混合運(yùn)算過程中,系統(tǒng)所進(jìn)行的類型轉(zhuǎn)換并不改變?cè)瓟?shù)據(jù)的類型,只是在運(yùn)算過程中將其值變成同類型后再運(yùn)算。例 char ch; int i; float f; double d;ch/i + f*d - ( f + i )intdoubledoubleintdoubledoubledoubledouble例:自動(dòng)類型轉(zhuǎn)換示例#include void main() float x,y; short
51、m; long n; x=3/2+8/3; y=3.0/2+8/3.0; m=1*2*3*4*5*6*7*8*9; n=1l*2*3*4*5*6*7*8*9; printf(x=%f,y=%fnm=%d,n=%ldn,x,y,m,n);運(yùn)行結(jié)果:x=3.000000,y=4.166667m=-30336,n=362880自動(dòng)類型轉(zhuǎn)換在進(jìn)行賦值操作時(shí),會(huì)發(fā)生類型轉(zhuǎn)換將取值范圍小的類型轉(zhuǎn)為取值范圍大的類型是安全的反之是不安全的如果大類型的值在小類型能容納的范圍之內(nèi),則平安無事但是,浮點(diǎn)數(shù)轉(zhuǎn)為整數(shù),會(huì)丟失小數(shù)部分,非四舍五入反之,轉(zhuǎn)換后的結(jié)果必然是錯(cuò)誤的,具體結(jié)果與機(jī)器和實(shí)現(xiàn)方式有關(guān)。避免如此使用,
52、好的編譯器會(huì)發(fā)出警告。2.5 逗號(hào)運(yùn)算與逗號(hào)表達(dá)式分隔符一個(gè)變量說明語句可以同時(shí)定義多個(gè)相同類型的變量,這些變量之間就用逗號(hào)來分隔。 如:int x,y,z;函數(shù)參數(shù)表中各參數(shù)之間也是用逗號(hào)來分隔的。 printf(x=%dny=%dnz=%,x,y,z);運(yùn)算符順序求值運(yùn)算符結(jié)合性從左向右2.5 逗號(hào)運(yùn)算與逗號(hào)表達(dá)式逗號(hào)表達(dá)式的格式: 表達(dá)式1,表達(dá)式2,表達(dá)式n求解次序:按從左到右的順序分別計(jì)算各子表達(dá)式的值逗號(hào)表達(dá)式的值:等于表達(dá)式n的值多數(shù)情況下,并不使用整個(gè)逗號(hào)表達(dá)式的值,更常見的情況是要分別得到各表達(dá)式的值主要用在循環(huán)語句中,同時(shí)對(duì)多個(gè)變量賦初值等 for ( i = 1, j =
53、 10; i j; i+, j- )循環(huán)起始條件循環(huán)結(jié)束條件循環(huán)增量例:#include void main() int x,y=7; float z=4; x=(y=y+6,y/z); printf(x=%dn,x);運(yùn)行結(jié)果:x=32.5 逗號(hào)運(yùn)算與逗號(hào)表達(dá)式void main() int a=3,b=4,c=1,max,t; if(ab,ac) max=a; else max=0; t=(a+3,b+1,+c); printf(max=%d,t=%dn,max,t);運(yùn)行結(jié)果:max=3,t=22.5 逗號(hào)運(yùn)算與逗號(hào)表達(dá)式舉一反三:判斷輸出結(jié)果printf(%d,%dn,(3,4,5),
54、(a=3,a=0,a+=2);運(yùn)行結(jié)果:5,22.5 逗號(hào)運(yùn)算與逗號(hào)表達(dá)式逗號(hào)運(yùn)算符是所有運(yùn)算符中級(jí)別最低的一種運(yùn)算符。例如,下面兩個(gè)表達(dá)式的意義是不同的: x= 3+4,5+7,10*4 x=(3+4,5+7,10*4)一個(gè)逗號(hào)表達(dá)式又可以與另一個(gè)表達(dá)式(可以是逗號(hào)表達(dá)式,也可以不是逗號(hào)表達(dá)式)連接成新的逗號(hào)表達(dá)式。(a=2*4,a*5),a-3最后得到整個(gè)逗號(hào)表達(dá)式的值為5。2.6 運(yùn)算符的優(yōu)先級(jí)與結(jié)合性表達(dá)式的運(yùn)算次序:取決于表達(dá)式中各種運(yùn)算符的優(yōu)先級(jí)。優(yōu)先級(jí)高的運(yùn)算符先運(yùn)算,優(yōu)先級(jí)低的運(yùn)算符后運(yùn)算。運(yùn)算符的結(jié)合性:決定了并列的相同運(yùn)算符的先后執(zhí)行順序。語言規(guī)定了運(yùn)算符的優(yōu)先級(jí)和結(jié)合性使
55、用圓括號(hào)可以提高括在其中的運(yùn)算的優(yōu)先級(jí)。 2.6 運(yùn)算符的優(yōu)先級(jí)與結(jié)合性優(yōu)先級(jí)描述運(yùn)算符結(jié)合性1最高優(yōu)先級(jí) ( ) .(結(jié)構(gòu)體成員運(yùn)算) - (指向結(jié)構(gòu)體成員運(yùn)算)左右2單目運(yùn)算-(負(fù)號(hào))+ - !(非) (位取反) (類型)sizeof * (指針取內(nèi)容運(yùn)算) &(取地址運(yùn)算) 右左3算術(shù)乘除運(yùn)算* / %左右4算術(shù)加減運(yùn)算+ -左右5移位運(yùn)算 左右6關(guān)系運(yùn)算 =左右7相等關(guān)系運(yùn)算= !=左右高低2.6 運(yùn)算符的優(yōu)先級(jí)與結(jié)合性(續(xù))優(yōu)先級(jí)描述運(yùn)算符結(jié)合性8按位與&左右9按位異或左右10按位或|左右11邏輯與&左右12邏輯或|左右13三目條件運(yùn)算?:右左14賦值運(yùn)算= += -= *= /=
56、%= = &= = |=右左15逗號(hào)運(yùn)算符,左右高低2.7 混合運(yùn)算時(shí)數(shù)據(jù)類型的轉(zhuǎn)換當(dāng)表達(dá)式中出現(xiàn)了多種類型數(shù)據(jù)的混合運(yùn)算時(shí),需要進(jìn)行類型轉(zhuǎn)換。隱含轉(zhuǎn)換(自動(dòng)轉(zhuǎn)換):從占用內(nèi)存較少的短數(shù)據(jù)類型轉(zhuǎn)化成占用內(nèi)存較多的長(zhǎng)數(shù)據(jù)類型時(shí),可以不做顯式的類型轉(zhuǎn)換聲明。強(qiáng)制類型轉(zhuǎn)換:從較長(zhǎng)的數(shù)據(jù)類型轉(zhuǎn)換成較短的數(shù)據(jù)類型時(shí),要做強(qiáng)制類型轉(zhuǎn)換。 數(shù)據(jù)類型關(guān)鍵字占用位數(shù)字符型char8短整型short16整型int32長(zhǎng)整型long32浮點(diǎn)型float32雙精度型double64例如:long lVal=1000;int ival=200;lVal=ival;double d1=123.5f;基本類型數(shù)據(jù)占有的內(nèi)存
57、寬度2.7 混合運(yùn)算時(shí)數(shù)據(jù)類型的轉(zhuǎn)換1. 隱含轉(zhuǎn)換(自動(dòng)類型轉(zhuǎn)換)的規(guī)則:char,short,int,unsigned,long,unsigned long,float,double低 高2.7 混合運(yùn)算時(shí)數(shù)據(jù)類型的轉(zhuǎn)換2. 強(qiáng)制類型轉(zhuǎn)換,消除從大到小的警告 l = (long)i; 格式: (類型)表達(dá)式 作用:把表達(dá)式的值轉(zhuǎn)為任意類型,從而將數(shù)據(jù)范圍寬的數(shù)據(jù)轉(zhuǎn)換成范圍低的數(shù)據(jù),但這可能會(huì)導(dǎo)致溢出或精度的下降。 例: (int)(x+y) (int)x+y (double)(3/2) (int)3.6用途:滿足一些運(yùn)算對(duì)類型的特殊要求,例%,兩側(cè)為int (int)2.5%3防止丟失整數(shù)除
58、法中的小數(shù)部分,例 int x=3,y=2; float f; f=(float)x/y;2.7 混合運(yùn)算時(shí)數(shù)據(jù)類型的轉(zhuǎn)換#include void main() int m=5; printf(m/2=%dn,m/2); printf(float)(m/2)=%fn,(float)(m/2); printf(float)m/2=%fn,(float)m/2); printf(m=%dn,m);兩個(gè)整數(shù)運(yùn)算的結(jié)果還是整數(shù),不是浮點(diǎn)數(shù)說明:強(qiáng)制轉(zhuǎn)換得到所需類型的中間變量,原變量類型不變 m/2 = 2(float)(m/2) = 2.000000(float)m/2 = 2.500000m =
59、5例 :void main() float x; int i; x=3.6; i=(int)x; printf(x=%f,i=%d,x,i); 精度損失問題較高類型向較低類型轉(zhuǎn)換時(shí)可能發(fā)生結(jié)果:x=3.600000,i=32.7 混合運(yùn)算時(shí)數(shù)據(jù)類型的轉(zhuǎn)換例:計(jì)算a+3*-2/(int)(a+b)-12的值。 其中a=1.7,b=2.4#include void main() float a=1.7,b=2.4,s; s= a+3*-2/(int)(a+b)-12; printf(result is %fn,s);result is 11.300000思考:x=3.0, y=4 計(jì)算1/2*x+
60、20%3*(x=y)/16的值0.52.8 語句和塊一個(gè)基本的語句以分號(hào);結(jié)尾。語句包括:聲明語句、表達(dá)式語句、選擇語句、循環(huán)語句、跳轉(zhuǎn)語句、空語句、函數(shù)調(diào)用語句復(fù)合語句。變量聲明語句int x, y;表達(dá)式語句 (一個(gè)合法的表達(dá)式加上分號(hào))i+;i = i + 1;空語句;復(fù)合語句復(fù)合語句:用 括起來的一組語句一般形式: 數(shù)據(jù)說明部分; 執(zhí)行語句部分; 說明:語法上和單一語句相同,在任何使用單個(gè)語句的地方都可以使用復(fù)合語句。在什么情況下使用復(fù)合語句?條件語句和循環(huán)語句在語法上只允許帶一條語句當(dāng)分支和循環(huán)中需要進(jìn)行多項(xiàng)操作時(shí)此處無分號(hào)此處有分號(hào)#include stdio.hvoid main
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 統(tǒng)計(jì)知識(shí)培訓(xùn)課件
- 發(fā)熱病人的護(hù)理措施查房
- 農(nóng)業(yè)品牌建設(shè)與推廣試題及答案
- 精釀釀酒師知識(shí)培訓(xùn)課件
- 園區(qū)物業(yè)管理合同范文
- 精簡(jiǎn)范例居間合同物權(quán)方
- 客運(yùn)運(yùn)輸服務(wù)合同
- 二零二五版買房誠(chéng)意金協(xié)議書范例
- 二零二五版全新工人工傷補(bǔ)償協(xié)議
- 二零二五事業(yè)單位試用期勞動(dòng)合同范例模板
- 6層框架住宅畢業(yè)設(shè)計(jì)結(jié)構(gòu)計(jì)算書
- 2016眾泰t600運(yùn)動(dòng)版原廠維修手冊(cè)與電路圖-使用說明
- Sigma-Delta-ADC講稿教學(xué)講解課件
- 《春秋三傳導(dǎo)讀》課件
- 教師情緒和壓力疏導(dǎo)課件
- 麻醉科進(jìn)修匯報(bào)課件
- ISO-IEC 27002-2022中文版完整詳細(xì)
- 【計(jì)算機(jī)應(yīng)用基礎(chǔ)試題】上海中僑職業(yè)技術(shù)大學(xué)2022年練習(xí)題匯總(附答案解析)
- 艾滋病(AIDS)經(jīng)典課件
- 義務(wù)教育質(zhì)量監(jiān)測(cè)小學(xué)四年級(jí) 德育模擬試卷附答案
- 年產(chǎn)5萬噸電石爐窯節(jié)能改造項(xiàng)目環(huán)境影響后評(píng)價(jià)報(bào)告
評(píng)論
0/150
提交評(píng)論