第二課輸入輸出語句_第1頁
第二課輸入輸出語句_第2頁
第二課輸入輸出語句_第3頁
第二課輸入輸出語句_第4頁
第二課輸入輸出語句_第5頁
已閱讀5頁,還剩26頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、第二課輸入輸出語句第1頁,共31頁,2022年,5月20日,22點(diǎn)3分,星期日實型常量實型常量包括正實數(shù)、負(fù)實數(shù)和實數(shù)零。pascal中表示實型常量的形式有兩種。十進(jìn)制表示法這是人們?nèi)粘J褂玫膸?shù)點(diǎn)的表示方法。如0.0,-0.0,+5.61,-8.0,-6.050等都是實型常量,而0.,.37都不是合法的實數(shù)形式。科學(xué)記數(shù)法科學(xué)記數(shù)法是采用指數(shù)形式的表示方法,如1.25105可表示成1.25E+05。在科學(xué)記數(shù)法中,字母“E”表示10這個“底數(shù)”,而E之前為一個十進(jìn)制表示的小數(shù),稱為尾數(shù),E之后必須為一個整數(shù),稱為“指數(shù)”。如-1234.56E+26 , +0.268E-5 , 1E5是合法

2、形式,而.34E12 , 2.E5 , E5 ,E,1.2E+0.5都不是合法形式的實數(shù)。 第2頁,共31頁,2022年,5月20日,22點(diǎn)3分,星期日 無論實數(shù)是用十進(jìn)制表示法還是科學(xué)表示法,它們在計算機(jī)內(nèi)的表示形式是一樣的,總是用浮點(diǎn)方式存儲。和整數(shù)相比,實數(shù)能表示的范圍大得多,但值得注意的是實數(shù)的運(yùn)算較整數(shù)的運(yùn)算速度慢且無法像整數(shù)那樣精確表示,只能近似表示。字符常量在Pascal語言中,字符常量是由單個字符組成,所有字符來自ASCII字符集,共有256個字符。在程序中,通常用一對單引號將單個字符括起來表示一個字符常量。如:a,A,0等。特殊地,對于單引號字符,則要表示成。對于ASCII字

3、符集中,按每個字符在字符集中的位置,將每個字符編號為0255,編號稱為對應(yīng)字符的序號。第3頁,共31頁,2022年,5月20日,22點(diǎn)3分,星期日4布爾常量布爾型常量僅有兩個值,真和假,分別用標(biāo)準(zhǔn)常量名true和false表示。它們的序號分別為1和0。 5符號常量一個常量即可以直接用字面形式表示(稱為直接常量, 如 124,156.8),也可以用一個標(biāo)識符來代表一個常量,稱為“符號常量”。但符號常量必須在程序中的說明部分定義,也就是說先定義,后使用。 定義符號常量的一般格式:CONST=說明:常量說明部分以關(guān)鍵字const開頭, 后面的標(biāo)識符為常量標(biāo)識符,其中“=”號后的常量為整數(shù)、實數(shù)、字符

4、、 字符串(字符、字符串常量在后面章節(jié)中將作介紹)。而且,在常量說明部分可以將幾個常量說明成符號常量,共用一個關(guān)鍵字“const”。第4頁,共31頁,2022年,5月20日,22點(diǎn)3分,星期日program ex;const var r,c,s:real;beginwrite(Enter r=);readln(r);c:=2*pi*r;s:=pi*r*r;writeln(c=,c);writeln(s=,s);end.則在本程序中pi和zero作為符號常量,分別代表實數(shù)3.14159和整數(shù)0。也就是說,常量說明部分既定義了常量名及其值,又隱含定義了常量的類型。 第5頁,共31頁,2022年,5

5、月20日,22點(diǎn)3分,星期日關(guān)于符號常量,應(yīng)注意下列幾點(diǎn):符號常量一經(jīng)定義,在程序的執(zhí)行部分就只能使用該常量標(biāo)識符,而不能修改其值。使用符號常量比直接用數(shù)值更能體現(xiàn)“見名知義”的原則,也便于修改參數(shù),故一個較好的程序中,應(yīng)盡量使用符號常量,在執(zhí)行部分基本上不出現(xiàn)直接常量。(二)變量變量代表了一個存儲單元,其中的值是可變的,故稱為變量。如游戲“魂斗羅”中玩者命的個數(shù)最初為3,當(dāng)你死了一次命減少一,這里命的個數(shù)就是一個變量(或者說命的個數(shù)存儲在一個存儲單元中)。即在程序運(yùn)行過程中,其值可以改變的量,稱為變量。變量有三個要素是:變量名、變量類型、變量值。 第6頁,共31頁,2022年,5月20日,2

6、2點(diǎn)3分,星期日1變量名 用一個合法的標(biāo)識符代表一個變量。如n,m,rot,total 等都是合法變量名。在程序中用到的變量必須在說明部分加以說明,變量名應(yīng)遵循自定義標(biāo)識符的命名規(guī)則,并注意“見名知義”的原則,即用一些有意義的單詞作為變量名。 “自定義標(biāo)識符”的命名規(guī)則為:自定義標(biāo)識符必須以字母(包含下劃線“_”)開頭,后面的字符可以是字母或數(shù)字。標(biāo)識符長度不超過63個字符。2變量的類型常量是有類型的數(shù)據(jù),變量在某一固定時刻用來存放一個常量,因此也應(yīng)有相應(yīng)的類型。如整型變量用來存放整數(shù),實型變量用來存放實數(shù)。第7頁,共31頁,2022年,5月20日,22點(diǎn)3分,星期日3變量說明在程序中若要使用

7、變量,變量的名稱及類型在程序的變量說明部分加以定義,變量的值則在程序的執(zhí)行部分中才能賦給。 變量說明的一般格式:VAR ,:;(中括號內(nèi)部分表示可省,下同) 其中VAR是pascal保留字,表示開始一個變量說明段, 每個變量標(biāo)識符或由逗號隔開的多個變量標(biāo)識, 必須在它的冒號后面說明成同一類型。一個程序中,可以說明許多不同類型的變量,每種類型變量之間用分號隔開,共用一個VAR符號。第8頁,共31頁,2022年,5月20日,22點(diǎn)3分,星期日例如:var age,day:integer; amount,average:real; 其中,Integer(整型)、Real(實型)是標(biāo)準(zhǔn)標(biāo)識符, 它們是

8、“類型標(biāo)識符”,代表了確定的類型,如age和 day 被定義為整型變量,amount和average被定義為實型變量。一旦定義了變量,就確定了它的類型,也就是說,就確定了該變量的取值范圍和對該變量所能進(jìn)行的運(yùn)算。 第9頁,共31頁,2022年,5月20日,22點(diǎn)3分,星期日類型取值范圍占字節(jié)數(shù)格式Integer-32768.327672帶符號16位Longint-2147483648. 21474836474帶符號32位類型取值范圍占字節(jié)數(shù)有效位數(shù)real611-12single47-8整型實型不同類型大小不一樣第10頁,共31頁,2022年,5月20日,22點(diǎn)3分,星期日變量的值如果得到?A

9、A:=3;Read(A);第11頁,共31頁,2022年,5月20日,22點(diǎn)3分,星期日1、讀語句(read語句)和賦值語句一樣,能夠改變變量的值。與賦值語句不同,讀語句從鍵盤或文件接收值賦予變量。 讀語句格式如下:read(變量名表);readln(變量名表);readln; 讀回車可以同時讀多個變量值,如:read(a,b);2、從鍵盤接收數(shù)據(jù)時,要注意各種不同數(shù)據(jù)類型數(shù)據(jù)的分隔符不同。 數(shù)值型(包括整型、實型以及它們的子界類型)以空格或回車符作為分隔符;輸入語句read(a,b);3 434第12頁,共31頁,2022年,5月20日,22點(diǎn)3分,星期日語句read只管接收數(shù)據(jù),光標(biāo)停在同

10、行語句readln接收完數(shù)據(jù)后,光標(biāo)轉(zhuǎn)到下一行變量說明var a,b,c,d:integer; 執(zhí)行結(jié)果abcd輸入數(shù)據(jù)1 2 3 4 56 7 8 程序段一read(a);readln(b,c);read(d);1236程序段二readln(a);read(b,c);read(d)1678“readln;”語句從鍵盤接收一個回車符。這個語句通常用在需要暫停的地方。如輸出時用來等待程序員看清結(jié)果。 read與readln的區(qū)別第13頁,共31頁,2022年,5月20日,22點(diǎn)3分,星期日(三)算術(shù)表達(dá)式 算術(shù)表達(dá)式的定義 pascal語言中的算術(shù)表達(dá)式是由符合pascal語法規(guī)定的運(yùn)算對象(包

11、括常量、變量、函數(shù))、算術(shù)運(yùn)算符、圓括號組成的有意義的式子。如:A+3.14159*5/8.4-Abs(-1123)算術(shù)運(yùn)算符常用的有以下6個算術(shù)運(yùn)算符: (加) (減) (乘) (實數(shù)除)得到結(jié)果為實型.如5.0/2.0=2.5, 5/2= 2. 5,4/2=2.0而不等于2。第14頁,共31頁,2022年,5月20日,22點(diǎn)3分,星期日DIV (整除或取商) DIV它要求除數(shù)和被除數(shù)均為整型, 結(jié)果也為整型。如10 DIV 2=5, 10 DIV 3=3, 5 DIV 10=0,-15 DIV 4= ?DIV運(yùn)算只取商的整數(shù)部分,參與DIV運(yùn)算的兩個對象不能為實型,只能為整型數(shù)據(jù)。-3第1

12、5頁,共31頁,2022年,5月20日,22點(diǎn)3分,星期日mod (求余), 也只能用于整數(shù)運(yùn)算,結(jié)果為整數(shù)。 例如:10 mod 4=2 , -17 mod 4= ?4 mod (-3)=?-1-4 mod -3=?1 即 a mod b=a-(a div b)*b。-1第16頁,共31頁,2022年,5月20日,22點(diǎn)3分,星期日(3)運(yùn)算優(yōu)先順序 如果一個表達(dá)式里出現(xiàn)兩個或兩個以上的運(yùn)算符, 則必須規(guī)定它們的運(yùn)算次序。pascal規(guī)定:(注:“MOD”、“DIV”運(yùn)算的優(yōu)先級與“”、“/”相同)。 這些運(yùn)算符優(yōu)先順序規(guī)則是: I 括號內(nèi)的表達(dá)式先計算 II運(yùn)算符的優(yōu)先級有4級,排列如下:

13、最高級 Not 第一級 * 、/、div、 mod、 and 第二級 + 、-、 or 第三級 =、=、=括號內(nèi)先算函數(shù)運(yùn)算符優(yōu)先順序同級運(yùn)算按從左到右的次序。(劃橫線為同級別)第17頁,共31頁,2022年,5月20日,22點(diǎn)3分,星期日二、賦值語句 變量既然代表一個存儲單元,其值是可變的,那么其中的值是怎么提供的,又是怎么改變的呢?可以通過賦值語句來進(jìn)行。 1、賦值語句的格式 變量名:=表達(dá)式; 其中“:=”稱為賦值號。 2、執(zhí)行過程 計算機(jī)先計算賦值號右邊表達(dá)式的值,然后將表達(dá)式的值賦給變量名代表的變量。如:A:=(9*8)-(2-1); A:=A+1 (不能寫平常數(shù)學(xué)上的A=A+1 )

14、三、輸出語句 輸出語句的作用是將程序運(yùn)算的結(jié)果輸出到屏幕或打印機(jī)等輸出設(shè)備。這里通常是指輸出到屏幕。第18頁,共31頁,2022年,5月20日,22點(diǎn)3分,星期日(一)輸出語句的兩種格式1、write語句 格式:Write(表達(dá)式1,表達(dá)式2,); 如:write(1,2,3,4); write(My name is Liping);2、writeln語句 格式: Write(表達(dá)式1,表達(dá)式2,)或writeln(二)輸出語句的功能 計算機(jī)執(zhí)行到某一輸出語句時,先計算出輸出語句中的每個表達(dá)式的值,并將每一個表達(dá)式的值一個接一個地輸出到屏幕上。 Write語句與writeln語句格式上都相似,

15、但它們在功能上有所不同,兩個語句的區(qū)別在于,write語句將其后括號中的表達(dá)式一個接一個輸出后,沒有換行。而writeln語句則在輸出各個表達(dá)式的值后換行。第19頁,共31頁,2022年,5月20日,22點(diǎn)3分,星期日帶雙場寬輸出格式: 雙場寬輸出格式為:write(實型表達(dá)式:m:n),其中m和n都是自然數(shù),m 用以指定整個數(shù)據(jù)所占的寬度,n指定輸出實數(shù)的小數(shù)位數(shù)。如 : write(sqrt(75):9:4);輸出:8.6602 如果雙場寬不能滿足輸出數(shù)據(jù)的最低要求, 系統(tǒng)自動突破指定的場寬限制,按實際長度輸出。 如:write(sqrt(75):5:4); 要使小數(shù)點(diǎn)后有4位數(shù)字,而總場

16、寬為5,是不可能的(因為還有一個小數(shù)點(diǎn), 小數(shù)點(diǎn)前面還有一個數(shù)字)。它最低限度要有6列,即輸出為: 8.6602第20頁,共31頁,2022年,5月20日,22點(diǎn)3分,星期日例1 寫出下列程序在turbo pascal下的輸出結(jié)果.program ex; const s=abcdefg;var i:integer; r:real; c:char;b:boolean;begin i:=1234;r:=1234.5678; c:=#;b:=true; writeln(i,i:6,i:3); writeln(r,r:12:5,r:8:5); writeln(c,c:5); writeln(s,s:1

17、0,s:5); writeln(b,b:5,b:3);end.運(yùn)行結(jié)果如下:123412341234#abcdefgabcdefgabcdefgTRUETRUETRUE第21頁,共31頁,2022年,5月20日,22點(diǎn)3分,星期日Running d:1.exe 1234 12341234# #abcdefg abcdefgabcdefgTRUE TRUETRUE第22頁,共31頁,2022年,5月20日,22點(diǎn)3分,星期日例如以下兩個程序段的輸出分別為:write(1,2,3,4);write(5,6);輸出為:123456writeln(1,2,3,4);write(5,6);輸出為:123

18、456練習(xí):按下列格式輸出兩位數(shù)的乘法運(yùn)算. 75* 23- 225 150- 1725 第23頁,共31頁,2022年,5月20日,22點(diǎn)3分,星期日四、應(yīng)用例析 例1:某倉庫5月1日有糧食100噸,5月2日又調(diào)進(jìn)20噸,5月3日賣出庫存的3分之二,5月4日又調(diào)進(jìn)庫存的3倍糧食,問該倉庫從5月1日到5月4日期間每天的糧食分別是多少噸?(輸出每天的庫存量)第24頁,共31頁,2022年,5月20日,22點(diǎn)3分,星期日分析:在這個問題中,主要要描述從5月1日到5月4日期間倉庫的糧食庫存量,且易知它是不斷變化的。因此我們可以用一個變量A來描述倉庫的糧食庫存量。程序可寫如下:Program ex1;

19、 Var A : integer;Begin A:=100;Writeln(5/1:,A); A:=A+20;Writeln(5/2:,A); A:=A div 3; writeln(5/3:,A); A:=A *4; writeln(5/4:,A);Readln;End.第25頁,共31頁,2022年,5月20日,22點(diǎn)3分,星期日例2:有三個小朋友甲乙丙。甲有50粒糖果,乙有43粒糖果,丙有13粒糖果?,F(xiàn)在他們做一個游戲。從甲開始,將自己的糖分三份,自己留一份,其余兩份分別給乙與丙,多余的糖果自己吃掉,然后乙與丙也依次這樣做。問最后甲、乙、丙三人各有書多少粒糖果?第26頁,共31頁,2022年,5月20日,22點(diǎn)3分,星期日分析:這個問題中我們關(guān)心的是在游戲過程中每個小朋友的糖果個數(shù),且他們所擁有的的糖果數(shù)是在變化的。因此可用a,b,c三個變量分別存放甲乙丙三個小朋友在某一時刻所擁有的糖果數(shù)。對于每人,分糖后,他的糖果數(shù)一定為原來的糖果數(shù) div 3(因為分糖過程糖果的數(shù)目不一定都剛

溫馨提示

  • 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

提交評論