資源描述:
《Pascal語言入門》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、.第一課 初識(shí)Pascal語言導(dǎo)航:文件類型信息學(xué)奧林匹克競(jìng)賽是一項(xiàng)益智性的競(jìng)賽活動(dòng),核心是考查選手的智力和使用計(jì)算機(jī)解題的能力。選手首先應(yīng)針對(duì)競(jìng)賽中題目的要求構(gòu)建數(shù)學(xué)模型,進(jìn)而構(gòu)造出計(jì)算機(jī)可以接受的算法,之后要寫出高級(jí)語言程序,上機(jī)調(diào)試通過。程序設(shè)計(jì)是信息學(xué)奧林匹克競(jìng)賽的基本功,在青少年朋友參與競(jìng)賽活動(dòng)的第一步必須掌握一門高級(jí)語言及其程序設(shè)計(jì)方法。一、Pascal語言概述 PASCAL語言也是一種算法語言,它是瑞士蘇黎世聯(lián)邦工業(yè)大學(xué)的N.沃思(NiklausWirth)教授于1968年設(shè)計(jì)完成的,1971年正式發(fā)表。1975年,對(duì)PASCAL語言進(jìn)行了修改,作為"標(biāo)準(zhǔn)PASCA
2、L語言"。 PASCAL語言是在ALGOL60的基礎(chǔ)上發(fā)展而成的。它是一種結(jié)構(gòu)化的程序設(shè)計(jì)語言,可以用來編寫應(yīng)用程序。它又是一種系統(tǒng)程序設(shè)計(jì)語言,可以用來編寫順序型的系統(tǒng)軟件(如編譯程序)。它的功能強(qiáng)、編譯程序簡(jiǎn)單,是70年代影響最大一種算法語言。二、Pascal語言的特點(diǎn) 從使用者的角度來看,PASCAL語言有以下幾個(gè)主要的特點(diǎn): ?、彼墙Y(jié)構(gòu)化的語言。PASCAL語言提供了直接實(shí)現(xiàn)三種基本結(jié)構(gòu)的語句以及定義"過程"和"函數(shù)"(子程序)的功能??梢苑奖愕貢鴮懗鼋Y(jié)構(gòu)化程序。在編寫程序時(shí)可以完全不使用GOTO語句和標(biāo)號(hào)。這就易于保證程序的正確性和易讀性。PASCAL語言強(qiáng)調(diào)的是可
3、靠性、易于驗(yàn)證性、概念的清晰性和實(shí)現(xiàn)的簡(jiǎn)化。在結(jié)構(gòu)化這一點(diǎn)上,比其它(如BASIC,FORTRAN77)更好一些?! 、灿胸S富的數(shù)據(jù)類型。......PASCAL提供了整數(shù)、實(shí)型、字符型、布爾型、枚舉型、子界型以及由以上類型數(shù)據(jù)構(gòu)成的數(shù)組類型、集合類型、記錄類型和文件類型。此外,還提供了其它許多語言中所沒有的指針類型。沃思有一個(gè)著名的公式:"算法+數(shù)據(jù)結(jié)構(gòu)=程序"。指出了在程序設(shè)計(jì)中研究數(shù)據(jù)的重要性。豐富的數(shù)據(jù)結(jié)構(gòu)和上述的結(jié)構(gòu)化性質(zhì),使得PASCAL可以被方便地用來描述復(fù)雜的算法,得到質(zhì)量較高的程序?! 、衬苓m用于數(shù)值運(yùn)算和非數(shù)值運(yùn)算領(lǐng)域。有些語言(如FORTRAN66,ALGOL
4、60)只適用于數(shù)值計(jì)算,有些語言(如COBOL)則適用于商業(yè)數(shù)據(jù)處理和管理領(lǐng)域。PASCAL的功能較強(qiáng),能廣泛應(yīng)用于各種領(lǐng)域。PASCAL語言還可以用于輔助設(shè)計(jì),實(shí)現(xiàn)計(jì)算機(jī)繪圖功能?! 、碢ASCAL程序的書寫格式比較自由。不象FORTRAN和COBOL那樣對(duì)程序的書寫格式有嚴(yán)格的規(guī)定。PASCAL允許一行寫多個(gè)語句,一個(gè)語句可以分寫在多行上,這樣就可以使PASCAL程序?qū)懙孟笤姼韪袷揭粯觾?yōu)美,便于閱讀?! ∮捎谝陨咸攸c(diǎn),許多學(xué)校選PASCAL作為程序設(shè)計(jì)課程中的一種主要的語言。它能給學(xué)生嚴(yán)格而良好的程序設(shè)計(jì)的基本訓(xùn)練。培養(yǎng)學(xué)生結(jié)構(gòu)化程序設(shè)計(jì)的風(fēng)格。但它也有一些不足之處,如它的文件
5、處理功能較差等。三、Pascal語言程序的基本結(jié)構(gòu) 任何程序設(shè)計(jì)語言都有著一組自己的記號(hào)和規(guī)則。PASCAL語言同樣必須采用其本身所規(guī)定的記號(hào)和規(guī)則來編寫程序。盡管不同版本的PASCAL語言所采用的記號(hào)的數(shù)量、形式不盡相同,但其基本成分一般都符合標(biāo)準(zhǔn)PASCAL的規(guī)定,只是某些擴(kuò)展功能各不相同罷了。下面我們首先來了解Pascal語言的程序基本結(jié)構(gòu)。 為了明顯起見先舉一個(gè)最簡(jiǎn)單的PASCAL程序例子:【例1】 從這個(gè)簡(jiǎn)單的程序可以看到: ⒈一個(gè)PASCAL程序分為兩個(gè)部分:程序首部和程序體(或稱分程序)。 ?、渤绦蚴撞渴浅绦虻拈_頭部分,它包括: ?、懦绦驑?biāo)志。用"progra
6、m"來標(biāo)識(shí)"這是一個(gè)PASCAL......程序"。PASCAL規(guī)定任何一個(gè)PASCAL程序的首部都必須以此字開頭。在turbopascal語言中,首部也可省略?! 、瞥绦蛎Q。由程序設(shè)計(jì)者自己定義,如例中的exam1?! ≡趯懲瓿绦蚴撞恐?,應(yīng)有一個(gè)分號(hào)?! 、吵绦蝮w是程序的主體,在有的書本里也稱"分程序"。程序體包括說明部分(也可省略)和執(zhí)行部分兩個(gè)部分。 ?、耪f明部分用來描述程序中用到的變量、常量、類型、過程與函數(shù)等。本程序中第二行是"變量說明",用來定義變量的名稱、類型?! ASCAL規(guī)定,凡程序中用到所有變量、符號(hào)常量、數(shù)組、標(biāo)號(hào)、過程與函數(shù)、記錄、文件等數(shù)據(jù)都必須在說
7、明部分進(jìn)行定義(或稱"說明")。也就是說,不允許使用未說明先使用?! 、茍?zhí)行部分的作用是通知計(jì)算機(jī)執(zhí)行指定的操作。如果一個(gè)程序中不寫執(zhí)行部分,在程序運(yùn)行時(shí)計(jì)算機(jī)什么工作也不做。因此,執(zhí)行部分是一個(gè)PASCAL程序的核心部分?! ?zhí)行部分以"begin"開始,以"end"結(jié)束,其間有若干個(gè)語句,語句之間以分號(hào)隔開。執(zhí)行部分之后有一個(gè)句點(diǎn),表示整個(gè)程序結(jié)束。 ?、碢ASCAL程序的書寫方法比較靈活。當(dāng)然,書寫不應(yīng)以節(jié)省篇幅為目的,而應(yīng)以程序結(jié)構(gòu)清晰、易讀為目的。在編寫程序