簡(jiǎn)單程序設(shè)計(jì)_第1頁(yè)
簡(jiǎn)單程序設(shè)計(jì)_第2頁(yè)
簡(jiǎn)單程序設(shè)計(jì)_第3頁(yè)
簡(jiǎn)單程序設(shè)計(jì)_第4頁(yè)
簡(jiǎn)單程序設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩103頁(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)介

簡(jiǎn)單程序設(shè)計(jì)簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第1頁(yè)。C語(yǔ)言基礎(chǔ)一、字匯表1、基本字符集①英文字母(大寫和小寫各26個(gè)),數(shù)字(0至9),下劃線。它們可以拼寫成保留字、標(biāo)識(shí)符和常數(shù)數(shù)值。②括號(hào):{}[]()'"簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第2頁(yè)。③專用符號(hào):

+-*/%=<>!?:.,&^~|;#④空白符和空字符空白符:空格符、水平制表符(Tab)、換行符('\n')空字符:‘\0’是字符串結(jié)束符⑤只能以字符常量或串常量形式出現(xiàn)的字符:如@$`等簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第3頁(yè)。2、單詞為了按照一定的語(yǔ)法規(guī)則構(gòu)成C語(yǔ)言的各種成分(如常量、變量等),C語(yǔ)言規(guī)定了基本詞法單位(即單詞)。六種:保留字、標(biāo)識(shí)符、常量、運(yùn)算符、分隔符、注釋符簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第4頁(yè)。3、保留字和標(biāo)識(shí)符(一)保留字(也稱關(guān)鍵字)保留字是具有特定含義的,專門用來(lái)說(shuō)明C語(yǔ)言的特定成分的一類單詞。例:for——用于定義循環(huán)語(yǔ)句

int——用來(lái)說(shuō)明整型變量簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第5頁(yè)。下面是C語(yǔ)言中的關(guān)鍵字(32個(gè)):autobreakcasecharconstcontinuedefaultdodoubleelseenumexternfloatforgotoifintlongregisterreturnshortsignedsizeofstaticstruct switchtypedefunionunsignedvoidvolatilewhile簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第6頁(yè)。(1)用于對(duì)變量的類型和屬性說(shuō)明的保留字有:charintfloatdoublevoid(基本類型名)longshortsignedunsigned(類型修飾符)enumstructunion(用于描述構(gòu)造類型)staticautoexternregisterconstvolatile(屬性說(shuō)明符)typedef(用于類型定義)(2)用于描述語(yǔ)句的保留字有:ifelseswitchcasedefaultgoto(用于分支和轉(zhuǎn)移語(yǔ)句)forwhiledobreakcontinue(用于循環(huán)語(yǔ)句)return(函數(shù)返回語(yǔ)句)(3)用于計(jì)算指定對(duì)象所占存儲(chǔ)單元數(shù)(字節(jié)數(shù))運(yùn)算符:sizeof簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第7頁(yè)。注意:1)保留字都用小寫字母書寫,不能用大寫字母表示。2)保留字有特定的用途,不能用于其它場(chǎng)合。簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第8頁(yè)。(二)標(biāo)識(shí)符(1)定義:標(biāo)識(shí)符就是一個(gè)名字,是用戶為程序中的符號(hào)常量、變量名、函數(shù)名、數(shù)組名、類型和文件等所起的名字。(2)命名規(guī)則:字母、數(shù)字和下劃線三種字符組成,且第一個(gè)字符必須為字母或下劃線。簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第9頁(yè)。下面是一些合法的標(biāo)識(shí)符。

Programtoto_file_10a_b_c_sum。下面是不合法的標(biāo)識(shí)符。

yes?M.D.John2fromyes/no$123#123yesnoa>b簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第10頁(yè)。(3)注意1)C語(yǔ)言中大、小寫敏感,即大、小寫字母是兩個(gè)不同的字符。例:sum和SUM表示兩個(gè)不同的標(biāo)識(shí)符。2)標(biāo)識(shí)符的長(zhǎng)度(有效字符個(gè)數(shù))視系統(tǒng)而定。TurboC則規(guī)定前32個(gè)字符有效,超過(guò)部分忽略。3)“見(jiàn)名知義”

areacounttotalsearch簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第11頁(yè)。數(shù)據(jù)類型、運(yùn)算符和表達(dá)式(一)C的數(shù)據(jù)類型一、數(shù)據(jù)的定義:計(jì)算機(jī)加工處理的對(duì)象。單值、多值(結(jié)構(gòu)化的)二、數(shù)據(jù)類型:指明數(shù)據(jù)的結(jié)構(gòu)形式。在程序中,任何數(shù)據(jù)都必須指定其數(shù)據(jù)類型。三、C語(yǔ)言中的數(shù)據(jù)類型簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第12頁(yè)。數(shù)據(jù)類型整數(shù)類型字符類型枚舉類型實(shí)數(shù)類型單精度型雙精度型數(shù)組類型結(jié)構(gòu)類型共同體類型基本類型構(gòu)造類型指針類型空類型簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第13頁(yè)。(二)常量和變量在C程序中參加運(yùn)算的數(shù)據(jù),可以是常量,也可以是變量。一、常量1、定義:又稱常數(shù),是指在程序運(yùn)行過(guò)程中其值不能被改變的量。如10,等都是常量。2、特點(diǎn):常量直接以值的形式出現(xiàn)。簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第14頁(yè)。3、符號(hào)常量1)定義:用標(biāo)識(shí)符命名的常量。例:用標(biāo)識(shí)符PI代替,PI就是符號(hào)常量。

2)目的:可使常量的含義明確,易讀性強(qiáng),也便于編寫通用程序。

3)定義方式:宏定義

通常,符號(hào)常量用大寫字母表示,變量用小寫字母表示,以示區(qū)別。簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第15頁(yè)。二、變量1)定義:變量是指在程序運(yùn)行過(guò)程中其值可以被改變的量。例如,計(jì)算圓面積的C語(yǔ)句

s=3.14159*r*r;其中的s和r都是變量。r可以取不同的數(shù)值,s的值將隨r的值的不同而不同。簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第16頁(yè)。2)、變量的基本特征名字(變量名):實(shí)際上是一個(gè)符號(hào)地址。存儲(chǔ)單元:用于存放變量的值變量的值可以在程序運(yùn)行中隨時(shí)被改變。類型例如,整型變量、實(shí)型變量、字符型變量等。簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第17頁(yè)。3)注意(1)“先定義,后使用”便于查錯(cuò)。對(duì)源程序編譯時(shí),編譯程序一旦發(fā)現(xiàn)未定義的變量名(或變量名寫錯(cuò)),就會(huì)指出其未被定義,從而可以很快地發(fā)現(xiàn)錯(cuò)誤。每一個(gè)變量被指定為某一確定類型,在編譯時(shí)就能為其分配相應(yīng)的存儲(chǔ)單元。每一變量屬于一種類型,便于在編譯時(shí)檢查對(duì)該變量所進(jìn)行的運(yùn)算是否合法。例如,求余運(yùn)算符“%”要求兩邊操作數(shù)類型必須為整型,若為實(shí)型編譯程序會(huì)給出錯(cuò)誤信息。簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第18頁(yè)。(2)首次使用前賦初值隨機(jī)值、有的系統(tǒng)中置零(3)可以在程序中修改變量的值手段:賦值語(yǔ)句、定義時(shí)賦值

scanf、參數(shù)傳遞

簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第19頁(yè)。(三)整型數(shù)據(jù)一、整型常量:三種書寫形式1、十進(jìn)制:可帶正負(fù)號(hào)的數(shù)字串

100-1802、八進(jìn)制:以0開頭,可帶正負(fù)號(hào)的數(shù)字串

0123相當(dāng)于十進(jìn)制的83(182+281+380=83)-011當(dāng)于十進(jìn)制的-9注意,八進(jìn)制數(shù)中的每個(gè)數(shù)字位必須是0到7。簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第20頁(yè)。3、十六進(jìn)制整數(shù):以0x(或0X)開頭,就是用十六進(jìn)制表示的整數(shù)。每個(gè)數(shù)字位可以是0到9、a到f(或A到F)。

0x123表示十進(jìn)制的291-0X12表示十進(jìn)制的-18簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第21頁(yè)。二、整型變量

1、基本整型的標(biāo)識(shí)符定義(整型名)

int2、整型變量的定義格式類型名變量名或類型名變量名1,變量名2,…變量名n例:

inti1,i2;/*定義整型變量i1和i2*/intI=10;/*定義整型變量I,并賦初值*/簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第22頁(yè)。3、整型數(shù)據(jù)在內(nèi)存中的存放形式

inti;i=10;i000000000000101010取值范圍:-32768~32767符號(hào)位簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第23頁(yè)。4.整型修飾符1)longlongint或long(長(zhǎng)整型)

取值范圍:-231~(231-1)例:longi;2)shortshortint或short(短整型)

取值范圍:-215~(215-1)例:shorti;簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第24頁(yè)。3)unsignedunsignedintx;

或unsignedx;(無(wú)符號(hào)整型)取值范圍:0~(216-1)

unsignedshortx;取值范圍:0~(216-1)

unsignedlongx;取值范圍:0~(232-1)4)signed(缺省的,符號(hào)整型)int就是signedint簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第25頁(yè)。5、測(cè)試一個(gè)變量(或某種類型的量)在內(nèi)存中所占的字節(jié)數(shù)

sizeof(類型名)

或sizeof表達(dá)式或sizeof(表達(dá)式)其結(jié)果是該類型(或表達(dá)式值類型)的量所占字節(jié)數(shù)。例:sizeof(float)的值為4若x是一整型變量,則sizeof(x)的值為2。簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第26頁(yè)。(四)實(shí)型數(shù)據(jù)帶有小數(shù)點(diǎn)的數(shù)稱為實(shí)數(shù)(也稱浮點(diǎn)數(shù))。一、實(shí)型常量1.十進(jìn)制數(shù)形式書寫格式:由數(shù)字和小數(shù)點(diǎn)組成(注意必須有一個(gè)小數(shù)點(diǎn))例:,(或.123),(或123.),,(負(fù)數(shù)前面要加負(fù)號(hào))簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第27頁(yè)。2.指數(shù)形式又稱科學(xué)記數(shù)法。是為了便于表示絕對(duì)值特別大(或特別?。┑膶?shí)數(shù)而設(shè)計(jì)的。書寫格式:必有e(或E),e前(即尾數(shù)部分)必須有數(shù)字,且e后面的指數(shù)部分必須是整數(shù)。例:,可表示為

其中是尾數(shù),e08是指數(shù)(代表108),可表示為-7

(或-7)不合法的:e-3,9.8e2.1,.e3,e簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第28頁(yè)。二、實(shí)型變量1、實(shí)數(shù)類型的標(biāo)識(shí)符:按精度要求分為單精度型和雙精度型兩種。

float-------單精度型

double-------雙精度型2、定義實(shí)型變量的方式:

floatx,y;/*定義x,y為單精度實(shí)數(shù)變量*/doublez;floatf1,f2=3.14;簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第29頁(yè)。3、實(shí)型數(shù)據(jù)在內(nèi)存中的存放形式+.3141591數(shù)符小數(shù)部分指數(shù)部分(帶階符)簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第30頁(yè)。4、注意:1)在一般系統(tǒng)中,一個(gè)float型數(shù)據(jù)在內(nèi)存中占4個(gè)字節(jié),一個(gè)double型數(shù)據(jù)占8個(gè)字節(jié)。單精度實(shí)數(shù)提供7位有效數(shù)字,雙精度實(shí)數(shù)提供15至16位有效數(shù)字,可表示的數(shù)值的范圍,不同的系統(tǒng)略有不同。進(jìn)行數(shù)值計(jì)算時(shí),若單精度實(shí)型所提供的精度不能滿足要求,可使用雙精度實(shí)型。2)實(shí)型常量無(wú)單雙精度之分,一個(gè)實(shí)型常量可以賦給float型變量,也可賦給double型變量,根據(jù)變量的類型來(lái)截取相應(yīng)的有效位數(shù)。例:floata=123456.789;簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第31頁(yè)。(五)字符型數(shù)據(jù)一、字符常量1、書寫格式:用一對(duì)單引號(hào)將字符括起來(lái)。

'A'

,'a','*'

,'k'

,'6'

注意:1)'A'與'a'不同

2)只能是一個(gè)字符2、取值范圍:ASCII簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第32頁(yè)。3、轉(zhuǎn)義字符1)、定義:以反斜杠“\”開頭的字符序列。2)、含義:將反斜杠后面的字符轉(zhuǎn)變成另外的意義。

'\n'中的'n'不代表字母n而作為“換行符”。簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第33頁(yè)。常用的轉(zhuǎn)義字符及含義簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第34頁(yè)。0x123表示十進(jìn)制的291輸入:3445231334后結(jié)果:

34,45

23.例:intx=5,y=7,z=8;x>0手段:賦值語(yǔ)句、定義時(shí)賦值”是單目運(yùn)算符,只有一個(gè)運(yùn)算對(duì)象,如:!a例如:inti=5;則執(zhí)行賦值語(yǔ)句書寫格式:由數(shù)字和小數(shù)點(diǎn)組成(注意必須有一個(gè)小數(shù)點(diǎn))其中是尾數(shù),e08是指數(shù)(代表108)2)標(biāo)識(shí)符的長(zhǎng)度(有效字符個(gè)數(shù))視系統(tǒng)而定。字符變量用來(lái)存放單個(gè)字符4、關(guān)系運(yùn)算符的優(yōu)先級(jí)3.邏輯運(yùn)算符(!scanf("%d%d",&a,&b);類型名變量名1,變量名2,…變量名n1、書寫格式:用一對(duì)單引號(hào)將字符括起來(lái)。例:floata=123456.5、測(cè)試一個(gè)變量(或某種類型的量)在內(nèi)存中所占的字節(jié)數(shù)charch;sqrt(x*y)3)例:‘\101’(八進(jìn)制)------‘A’(65)‘\x41’(十六進(jìn)制)------‘A’(65)‘\0’或‘\x0’--------ASCII碼為0的控制字符4)區(qū)別:‘0’與‘\0’簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第35頁(yè)。二、字符變量字符變量用來(lái)存放單個(gè)字符1、字符類型標(biāo)識(shí)符

char2、字符變量定義方式

charc1,c2;/*c1、c2被定義為字符變量*/charch=‘a(chǎn)’;簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第36頁(yè)。3、一個(gè)字符變量在內(nèi)存中占一個(gè)字節(jié)即:每個(gè)字節(jié)存放一個(gè)字符例:’a’---------ASCII碼為9701100001簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第37頁(yè)。三、字符串常量1、定義:用一對(duì)雙引號(hào)括起來(lái)的字符序列。例:”CHINA”、”Howdoyoudo.”

”1234”、”a”2、特點(diǎn):每一個(gè)字符串的結(jié)尾加一個(gè)“字符串結(jié)束標(biāo)志”(’\0’,它是一個(gè)ASCII碼值為0的字符),以此為標(biāo)記判定字符串是否結(jié)束。簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第38頁(yè)。3、字符常量和字符串常量的主要區(qū)別是:①字符常量用單引號(hào),而字符串常量用雙引號(hào)。②字符常量的引號(hào)里只能括一個(gè)字符,而字符串引號(hào)里可以括任意多個(gè)字符(包括0個(gè),1個(gè),2個(gè)……)。簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第39頁(yè)。③在內(nèi)存中的存儲(chǔ)不同區(qū)別‘a(chǎn)’與“a”“a”的存儲(chǔ)結(jié)構(gòu):‘a(chǎn)’的存儲(chǔ)結(jié)構(gòu):注意:字符串中的‘\0’是系統(tǒng)自動(dòng)加上的?!產(chǎn)’‘\0’01100001

00000000‘a(chǎn)’01100001簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第40頁(yè)。小結(jié)常量的書寫格式變量的定義方式先定義,后使用;使用前賦初值變量值可被修改;定值的手段例:(變量定義時(shí)賦初值)

inta,b,c=5;inta=5,b=5,c=5;inta=b=c=5;(錯(cuò)誤的)簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第41頁(yè)。運(yùn)算符和表達(dá)式(一)、C運(yùn)算符簡(jiǎn)介

c語(yǔ)言的運(yùn)算符范圍很寬,把除了控制語(yǔ)句和輸入輸出以外的幾乎所有的基本操作都作為運(yùn)算符處理,例如將賦值符“=”作為賦值運(yùn)算符,方括號(hào)作為下標(biāo)運(yùn)算符等。C的運(yùn)算符有以下幾類。

1.算術(shù)運(yùn)算符(見(jiàn)2.8.2節(jié))

2.關(guān)系運(yùn)算符(><==>=<=!=)

3.邏輯運(yùn)算符(?。Γ|)

4.位運(yùn)算符(<<>>~|^&)

5.賦值運(yùn)算符(=及其擴(kuò)展賦值運(yùn)算符)簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第42頁(yè)。

6.條件運(yùn)算符(?:)

7.逗號(hào)運(yùn)算符(,)

8.指針運(yùn)算符(*和&)

9.求字節(jié)數(shù)運(yùn)算符(sizeof)

10.強(qiáng)制類型轉(zhuǎn)換運(yùn)算符(類型)

11.分量運(yùn)算符(.→)

12.下標(biāo)運(yùn)算符([])

13.其它(如函數(shù)調(diào)用運(yùn)算符())

簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第43頁(yè)。運(yùn)算符和表達(dá)式(二)、表達(dá)式:由運(yùn)算符號(hào)和括號(hào)將運(yùn)算對(duì)象(常量、變量、函數(shù)等)按一定的規(guī)則連接起來(lái)的有意義的式子。算術(shù)表達(dá)式 C表達(dá)式

2AB 2*A*B

(1+X)/(A*B)

sqrt(x*y)

<math.h>簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第44頁(yè)。注意:一個(gè)常量,一個(gè)變量,或一個(gè)函數(shù)式是表達(dá)式的最簡(jiǎn)單形式,例如:a//變量a是一個(gè)表達(dá)式1.5//常量是一個(gè)實(shí)型表達(dá)式'x'//這是一個(gè)字符型表達(dá)式sin(x)//這也是一個(gè)表達(dá)式,而且?guī)в泻瘮?shù)運(yùn)算符sin()簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第45頁(yè)。C語(yǔ)言的表達(dá)式算術(shù)表達(dá)式(算術(shù)運(yùn)算符)賦值表達(dá)式 (賦值運(yùn)算符)逗號(hào)表達(dá)式 (逗號(hào)運(yùn)算符)關(guān)系表達(dá)式 (關(guān)系運(yùn)算符)邏輯表達(dá)式 (邏輯運(yùn)算符)簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第46頁(yè)。一、算術(shù)表達(dá)式1、算術(shù)運(yùn)算符:

+(加)、-(減)、*(乘)、/(除)、%(求余)例:5+2 結(jié)果為75.0+2結(jié)果為5/2結(jié)果為25%2結(jié)果為1結(jié)果為簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第47頁(yè)。注意:“-”除了用作減法運(yùn)算外,還可作負(fù)值運(yùn)算符,如:-3,-b等。對(duì)“/”運(yùn)算符(除運(yùn)算)來(lái)說(shuō),若參加運(yùn)算的兩個(gè)操作數(shù)都是整數(shù),則結(jié)果也是整數(shù),如7/4的結(jié)果值為1(只取結(jié)果值的整數(shù)部分);只要其中有一操作數(shù)為實(shí)型,則計(jì)算結(jié)果為實(shí)型。求余運(yùn)算符“%”要求兩邊的操作數(shù)都是整數(shù),如7%4的結(jié)果值為3(取7除以4后所得的余數(shù)部分)。簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第48頁(yè)。(t+3)%7例:今天是星期三,t天之后是星期幾? (設(shè)星期日——0、 星期一——1、

……

星期六——6)

簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第49頁(yè)。(t+2)%7+1推廣:若(設(shè) 星期一——1、

……

星期六——6、星期日——7、)

簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第50頁(yè)。2、運(yùn)算符的優(yōu)先級(jí)與結(jié)合性例:假設(shè)

inti;

floatf;

doubled;

longl; 計(jì)算:-10+‘a(chǎn)’+i*f-d/l簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第51頁(yè)。二目運(yùn)算中的左右操作數(shù)的優(yōu)先級(jí)規(guī)則算術(shù)運(yùn)算符的優(yōu)先級(jí)分為三級(jí),從高到低排列次序如下。一級(jí):負(fù)號(hào)(-)

二級(jí):*/%

三級(jí):+-當(dāng)然,通過(guò)加圓括號(hào)可以改變這種優(yōu)先關(guān)系,因?yàn)閳A括號(hào)的優(yōu)先級(jí)最高。簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第52頁(yè)。C語(yǔ)言規(guī)定了各種運(yùn)算符的結(jié)合方向(結(jié)合性)負(fù)值運(yùn)算符是自右至左(即先與右邊的運(yùn)算對(duì)象結(jié)合)其它基本算術(shù)運(yùn)算符是自左至右當(dāng)相同優(yōu)先級(jí)的運(yùn)算符同時(shí)出現(xiàn)在表達(dá)式中,系統(tǒng)將按照運(yùn)算符的結(jié)合性規(guī)定其運(yùn)算規(guī)則。

簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第53頁(yè)。例:假設(shè)

inti;

floatf;

doubled;

longl; 計(jì)算:-10+‘a(chǎn)’+i*f-d/l簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第54頁(yè)。3、數(shù)據(jù)類型的轉(zhuǎn)換簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第55頁(yè)。注意:橫向朝左的箭頭表示必定的轉(zhuǎn)換,以提高運(yùn)算精度縱向箭頭方向只表示向高類型轉(zhuǎn)換,不要理解為int型先轉(zhuǎn)換成unsigned型,再轉(zhuǎn)換成long,再轉(zhuǎn)換成double型。

通俗地講,在進(jìn)行混合運(yùn)算時(shí),char、short必定自動(dòng)轉(zhuǎn)換成int,float必定自動(dòng)轉(zhuǎn)換成double,其它的類型轉(zhuǎn)換根據(jù)具體情況而定。簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第56頁(yè)。4、類型轉(zhuǎn)換(1)分類 自動(dòng)類型轉(zhuǎn)換(隱式轉(zhuǎn)換) 強(qiáng)制類型轉(zhuǎn)換(顯式轉(zhuǎn)換)(2)強(qiáng)制類型轉(zhuǎn)換 格式:(類型名)表達(dá)式簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第57頁(yè)。例如:

(int)(a+b)//將a+b的值轉(zhuǎn)換成整型

(int)a+b//只將a轉(zhuǎn)換成整型,然后與b相加

(float)5/3簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第58頁(yè)。5、自增自減運(yùn)算符兩個(gè)單目運(yùn)算符:

++:使變量的值增1

--:使變量的值減1++和--既可以出現(xiàn)在運(yùn)算對(duì)象的前面(稱為前綴運(yùn)算符),如++i,--i。也可以出現(xiàn)在運(yùn)算對(duì)象的后面(稱為后綴運(yùn)算符),如i++,i--。簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第59頁(yè)。例:++i

若i=5結(jié)果為6

若i=5.4結(jié)果為i++

若i=5結(jié)果為6

若i=5.4結(jié)果為簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第60頁(yè)。例:--i

若i=5結(jié)果為4

若i=5.4結(jié)果為i--

若i=5結(jié)果為4

若i=5.4結(jié)果為簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第61頁(yè)。前綴運(yùn)算符的作用:使用變量之前,先將變量的值加1(對(duì)++)或減1(對(duì)--)。例如:inti=5;則執(zhí)行賦值語(yǔ)句

j=++i;//j=6,i=6后綴運(yùn)算符的作用:先使用變量的值,再將變量值加(對(duì)++)1或減1(對(duì)--)。例如:inti=5;則執(zhí)行賦值語(yǔ)句

j=i++;//j=5,i=6簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第62頁(yè)。注意:(1)自增、自減運(yùn)算符只能用于變量,不能用于常量或表達(dá)式。如:++(x+y)、5++等都是非法的。(2)++和--的結(jié)合方向是“自右至左”。(3)在表達(dá)式中使用自增、自減運(yùn)算符時(shí)要慎重。 例:printf(“%d,%d”,j,j++);簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第63頁(yè)。二、賦值表達(dá)式1.賦值運(yùn)算符

=(亦稱賦值號(hào))例:intx=5,y=7,z=8; floata,,c;

簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第64頁(yè)。2、賦值表達(dá)式定義:由賦值運(yùn)算符將一個(gè)變量和一個(gè)表 達(dá)式連接起來(lái)的式子。格式:變量名=表達(dá)式作用:將賦值運(yùn)算符右邊表達(dá)式的值賦給左邊的變量。例:x=a+b;(賦值語(yǔ)句;語(yǔ)句結(jié)束符)簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第65頁(yè)。注意(1)賦值運(yùn)算符“=”左側(cè)必須是變量名(2)如果“=”兩側(cè)的類型不一致,但都是數(shù)值型或字符型時(shí),賦值時(shí)系統(tǒng)自動(dòng)將表達(dá)式類型轉(zhuǎn)換成賦值號(hào)左側(cè)變量的類型,然后再賦值。 例:intx=3.54; //x的值為3(結(jié)果為整型,取整數(shù)部分)簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第66頁(yè)。(3)賦值運(yùn)算符與數(shù)學(xué)上的等號(hào)是一樣的,但含義卻不同。例:x=x+1;//若x=100,則x值變?yōu)?0(4)賦值表達(dá)式中的表達(dá)式可以是另一賦值表達(dá)式,即賦值運(yùn)算可以連續(xù)進(jìn)行(從右向左結(jié)合)。例:a=(b=8)亦可寫成a=b=8a=b=c=d=8等價(jià)于a=(b=(c=(d=8)))簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第67頁(yè)。3、復(fù)合賦值運(yùn)算符在賦值符“=”之前加上其它運(yùn)算符。(兩個(gè)運(yùn)算符之間不能加空格)例如:

+=-=*=/=%=

(算術(shù)運(yùn)算與賦值運(yùn)算結(jié)合)其余:&=^=|=<<=>>=簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第68頁(yè)。目的簡(jiǎn)化程序書寫,提高運(yùn)算效率。例:

a+=b等價(jià)于a=a+ba*=b+c等價(jià)于a=a*(b+c)a%=b+c等價(jià)于a=a%(b+c)簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第69頁(yè)。三、逗號(hào)運(yùn)算符1、逗號(hào)運(yùn)算符,2、逗號(hào)表達(dá)式定義:用逗號(hào)將兩個(gè)(或多個(gè))表達(dá)式連接起來(lái)的式子。格式:表達(dá)式1,表達(dá)式2

含義:先計(jì)算表達(dá)式1的值,再計(jì)算表達(dá)式2的值,而整個(gè)逗號(hào)表達(dá)式的值是表達(dá)式2的值例:

a=8,a*10//a=80簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第70頁(yè)。逗號(hào)運(yùn)算符是所有運(yùn)算符中級(jí)別最低的。例:

x=(a=3,6*3)(賦值表達(dá)式)結(jié)果:將一個(gè)逗號(hào)表達(dá)式的值18賦給x。

x=a=3,6*a(逗號(hào)表達(dá)式)結(jié)果:x和a的值為3,整個(gè)表達(dá)式的值為18。簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第71頁(yè)。關(guān)系運(yùn)算符和關(guān)系表達(dá)式

1、關(guān)系運(yùn)算符(六種)

<小于<=小于等于

>大于>=大于等于

==等于!=不等于用以表示兩個(gè)運(yùn)算對(duì)象之間的大小關(guān)系。簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第72頁(yè)。2、關(guān)系表達(dá)式(1)定義:關(guān)系運(yùn)算符將兩個(gè)表達(dá)式連接起來(lái)的式子。例如:

x>ya+b<=9.8簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第73頁(yè)。3、關(guān)系表達(dá)式的值邏輯值,即“真”和“假”。在C語(yǔ)言中,1表示“真”,0表示“假”。例如,當(dāng)x>y為“真”時(shí),該表達(dá)式的值為1;否則,表達(dá)式的值為0??梢詫㈥P(guān)系表達(dá)式的運(yùn)算結(jié)果賦給一個(gè)整型變量或字符型變量例:intx=10,y=5;z=x>y;

則z的值為1簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第74頁(yè)。例:用表達(dá)式描述下列敘述(1)單位圓內(nèi)的點(diǎn)坐標(biāo)(x,y)。(x*x+y*y)<1(2)x是一個(gè)偶數(shù)

x%2==0(3)x是5的倍數(shù)

x%5==0(4)x是一個(gè)正數(shù)

x>0簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第75頁(yè)。4、關(guān)系運(yùn)算符的優(yōu)先級(jí)算術(shù)運(yùn)算符高(左到右)關(guān)系運(yùn)算符(左到右)賦值運(yùn)算符低(右到左)(<,<=,>,>=)高(==,!=)低例:ch=getchar()!=‘Q’

(錯(cuò))

(ch=getchar())!=‘Q’

(對(duì))簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第76頁(yè)。邏輯運(yùn)算符和邏輯表達(dá)式1、邏輯運(yùn)算符(三個(gè))

!(非)&&(與)||(或)“!”是單目運(yùn)算符,只有一個(gè)運(yùn)算對(duì)象,如:!a“&&”是雙目運(yùn)算符,有兩個(gè)運(yùn)算對(duì)象,如:a&&b“||”是雙目運(yùn)算符,有兩個(gè)運(yùn)算對(duì)象,如:a||b。簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第77頁(yè)。邏輯運(yùn)算的真值表

注意:C語(yǔ)言中,判斷一個(gè)量的“真假”時(shí),以非零為“真”,零為“假”。但邏輯表達(dá)式的值為1或0。簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第78頁(yè)。2、邏輯表達(dá)式(1)定義:用邏輯運(yùn)算符將表達(dá)式連接起來(lái)的式子。(2)作用:把若干個(gè)關(guān)系表達(dá)式組合起來(lái)進(jìn)行復(fù)雜的判斷。(3)邏輯表達(dá)式的值:邏輯值(0或1)

(注意:C語(yǔ)言沒(méi)有邏輯類型)簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第79頁(yè)。例如:

3&&4結(jié)果為10&&8、1&&0結(jié)果都是00||0結(jié)果為00||8、1||0、3||4結(jié)果都是1e=(a<b)&&(c>d)

可將其賦給整型變量或字符型變量。簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第80頁(yè)。3、邏輯運(yùn)算符的優(yōu)先級(jí)

!(右到左)高算術(shù)運(yùn)算符關(guān)系運(yùn)算符

&&(左到右)

||(左到右)賦值運(yùn)算符低簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第81頁(yè)。例:用表達(dá)式描述下列敘述(1)判斷字符變量ch的內(nèi)容是否是數(shù)字字符。

c>=’0’&&c<=’9’(2)a是整百的正整數(shù)。

(a>0)&&(a%100==0)(3)在a,b,c三個(gè)數(shù)中,a不是最大的,也不是最小的。

(b<a)&&(a<c)||(c<a)&&(a<b)簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第82頁(yè)。格式輸出函數(shù)printf()1、一般格式:

printf(格式控制,輸出表列);2、格式控制格式控制是用雙引號(hào)括起來(lái)的字符串。它包括兩種信息:格式說(shuō)明普通字符簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第83頁(yè)。(1)格式說(shuō)明由“%”和格式字符組成。作用:將輸出的數(shù)據(jù)轉(zhuǎn)換為指定的格式后再輸出。printf("%d%d",a,b);格式說(shuō)明總是由“%”開始。(2)普通字符即需要原樣輸出的字符。printf("a=%db=%d\n",a,b);簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第84頁(yè)。格式字符(小寫字母):%d十進(jìn)制帶符號(hào)的整數(shù)(對(duì)正數(shù)不輸出符號(hào))%o八進(jìn)制無(wú)符號(hào)的整數(shù)(不輸出前導(dǎo)符0)%x(X)十六進(jìn)制無(wú)符號(hào)的整數(shù)(不輸出前導(dǎo)符0x)%u 十進(jìn)制無(wú)符號(hào)的整數(shù)%c 輸出一個(gè)字符%s 輸出一個(gè)字符串%f 小數(shù)形式輸出單、雙精度實(shí)數(shù)%e(E) 指數(shù)形式輸出單、雙精度實(shí)數(shù)簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第85頁(yè)。3、輸出表列(1)printf()函數(shù)中的“輸出表列”部分是由表達(dá)式組成的。(2)這些表達(dá)式應(yīng)當(dāng)與“格式控制”字符串中的格式說(shuō)明符的類型一一對(duì)應(yīng)(3)各表達(dá)式之間用逗號(hào)分隔。例:

printf("%d",x+y);printf("x=%d,y=%f,ch=%c",x,y,ch);簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第86頁(yè)。例:#include"stdio.h"main(){intx=10;floaty=123.14;charch;printf("inputch=");ch=getchar(); printf("x=%d,y=%f,ch=%c",x,y,ch);}運(yùn)行結(jié)果顯示:(VC)inputch=ax=10,y=123.139999,ch=a簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第87頁(yè)。4、附加格式字符在“%”與格式字符之間可以插入附加字符(1)l(小寫字母)用于長(zhǎng)整型數(shù),可加在格式符d,o,x,u的前面若longx=12345678;

則printf("x=%ld",x);

結(jié)果:x=12345678簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第88頁(yè)。(2)m(一個(gè)具體正整數(shù))數(shù)據(jù)輸出寬度(總列數(shù))例:

printf(“%4d,%4d”,a,b); 若a=123,b=12345

則?123,12345

(?表示一個(gè)空位)簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第89頁(yè)。(3)(m,n一個(gè)具體正整數(shù)) 對(duì)實(shí)數(shù)而言,m為數(shù)據(jù)輸出寬度(總列數(shù)),n表示輸出幾位小數(shù)。 例:若printf(“,%f”,a,a);

??,(默認(rèn)6位)簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第90頁(yè)。 對(duì)字符串而言,m為數(shù)據(jù)輸出寬度(總列數(shù)),n表示截取的字符個(gè)數(shù)。 例:

printf("%3s,%7.2s","HELLO","HELLO");

結(jié)果:

HELLO,?????HE簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第91頁(yè)。(4)-(負(fù)號(hào))輸出的數(shù)據(jù)在域內(nèi)向左對(duì)齊 例:

printf("%-10s\n","HELLO");

結(jié)果:

HELLO?????

簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第92頁(yè)。例:sizeof(float)的值為41、關(guān)系運(yùn)算符(六種)⑤只能以字符常量或串常量形式出現(xiàn)的字符:如@$`等printf("%4d,%4d,%d,%o,%x\n",a,b,c,c,c);一級(jí):負(fù)號(hào)(-)0&&8、1&&0結(jié)果都是0結(jié)果:x和a的值為3,整個(gè)表達(dá)式的值為18。c>=’0’&&c<=’9’unsignedintx;C語(yǔ)言系統(tǒng)把最后輸入的回車鍵放入鍵盤緩沖區(qū)的ASCII碼是10(解釋為回車換行)。例如:inti=5;則執(zhí)行賦值語(yǔ)句01100001先定義,后使用;2、定義實(shí)型變量的方式:5.賦值運(yùn)算符(=及其擴(kuò)展賦值運(yùn)算符)printf("area=%f\n",area);(2)這些表達(dá)式應(yīng)當(dāng)與“格式控制”字符串中的格式說(shuō)明符的類型一一對(duì)應(yīng)三級(jí):+-1、逗號(hào)運(yùn)算符,14159*r*r;例:#include"stdio.h"main(){inta=123,b=12345,c=-1;floatf=123.456;printf("%4d,%4d,%d,%o,%x\n",a,b,c,c,c);printf("%f,%10f,%10.2f,%.2f,%-10.2f\n",f,f,f,f,f);printf("%3s,%7.2s\n","HELLO","HELLO");printf("%-10s\n","HELLO");}運(yùn)行結(jié)果:(VC環(huán)境下,?代表空位)

?123,12345,-1,37777777777,ffffffff

123.456001,123.456001,????123.46,123.46,123.46

HELLO,?????HE

HELLO

簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第93頁(yè)。printf()小結(jié)(1)格式說(shuō)明符應(yīng)當(dāng)與所對(duì)應(yīng)的表達(dá)式類型相一致。比如,輸出整型數(shù)據(jù)時(shí),可以使用格式字符d,o,x,u等。(2)m為指定的數(shù)據(jù)輸出寬度。如果數(shù)據(jù)的實(shí)際寬度大于m,則突破m的限制,按數(shù)據(jù)的實(shí)際寬度輸出;如果數(shù)據(jù)的實(shí)際寬度小于m,則按m指示的寬度輸出,輸出時(shí)向右對(duì)齊,左端補(bǔ)空格。(3)負(fù)號(hào)“-”表示如果數(shù)據(jù)的輸出寬度小于m,則輸出時(shí)數(shù)據(jù)向左對(duì)齊,右端補(bǔ)空格。簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第94頁(yè)。printf()小結(jié)(續(xù))(4)“%m.nf”表示輸出的浮點(diǎn)型數(shù)據(jù)共占m列(含小數(shù)點(diǎn)),其中小數(shù)點(diǎn)后有n位數(shù)字。(5)“%m.ns”表示輸出的字符串共占m列,但只取字符串左端的n個(gè)字符。這n個(gè)字符輸出在m列的右側(cè),左邊補(bǔ)空格。(6)對(duì)于o或x格式符,輸出的數(shù)值不帶符號(hào)位,而是將符號(hào)位也看作數(shù)值的一部分。因此,不能直接輸出負(fù)的八進(jìn)制或十六進(jìn)制數(shù)。(7)如果想輸出字符“%”,則應(yīng)該在“格式控制”字符串中連續(xù)寫兩個(gè)“%”,即兩個(gè)“%”號(hào)表示一個(gè)“%”字符。簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第95頁(yè)。格式輸入函數(shù)scanf()

1、格式:

scanf(格式控制,地址表列); “格式控制”:同printf“地址表列”:由若干個(gè)地址組成的表列,可以是變量的地址,也可以是字符串的首地址。簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第96頁(yè)。例:

main(){inta,b,c;scanf("%d%d%d",&a,&b,&c);printf("%d,%d,%d\n",a,b,c);}簡(jiǎn)單程序設(shè)計(jì)全文共108頁(yè),當(dāng)前為第97頁(yè)。2、取地址符號(hào):

&例:scanf("%d%d",&a,&b);

輸入34(空格分隔數(shù)據(jù))

若輸入3,4(error)例:scanf("a=%d,b=%d",&a,&b);

輸入:a=3,b=4

若輸入:34 (error)3,4 (er

溫馨提示

  • 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)論