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