




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、江蘇省信息組中心信息技術(shù)學(xué)業(yè)水平測試百日沖刺(必修十算法與程序設(shè)計)第二部分算法與程序設(shè)計(選修)主題1算法與程序設(shè)計1.1 算 法1.1.1 計算機解決問題的過程知識點1:人是如何解決問題的【知識鏈接】本考點要求學(xué)生達到了解”水平。解決問題的過程可以總結(jié)為:觀察、 分析問題,收集必要的信息,嘗試按照一定的方法和步驟 解決問題。一般來說,同一個問題可以有多種解決方法,但不同的方法有優(yōu)劣之分。評價一種方法的優(yōu)劣要與具體情況相結(jié)合。要理解本考點的內(nèi)容除了用教科書中 韓信點兵”的例子外,還可以舉出其他一些例子,例如: 最小公倍數(shù)問題、班級活動的設(shè)計等?!炯寄軖呙琛颗囵B(yǎng)將生活中的實例整理成條理化步驟的
2、好習(xí)慣,提高自己的邏輯思維和語言敘述能力。體會邏輯關(guān)聯(lián)詞 如果那么”、或者”、 并且“、否則”的含義,能把這些邏輯關(guān)聯(lián) 詞翻譯成數(shù)學(xué) 語言”。【典型題析】1 .分析 這個人誰都不認(rèn)識”的含義,體會同一種敘述在不同語境中可以表達不同的意思。分析:第一種解釋是在場的所有人都不認(rèn)識這個人 (這個人是被認(rèn)識的對象);第二種解釋是這個人不認(rèn)識在場的所有人。2 .張三有一杯咖啡,李四有一杯牛奶,在不交換杯子的前提下如何交換兩人的飲料。分析:設(shè)張三的杯子為x,李四的杯子為y,找一個空杯子to將x杯中的咖啡倒入t杯中, 將y杯中的牛奶倒入x杯中,再將t杯中的咖啡倒入 y杯中即可。可以寫成x-t ,yf , t
3、-y c【模擬練習(xí)】1 .把從早晨起床到學(xué)校的過程整理成算法(解決問題的方法和步驟)并表述出來。2 . 一個偵探逮捕了 5個嫌疑犯b因為這5個人供出的作案地點各有出入,進一步審訊后,他 們分別提出了如下的中明。a: 5個人當(dāng)中有1個人說了謊。b: 5個人當(dāng)中有2個人說了謊。c: 5個人當(dāng)中有3個人說了謊。d: 5個人當(dāng)中有4個人說了謊。e: 5個人全說了謊。然而只能釋放說真話的人,請問該釋放誰呢 ?3 .小明有一盒劉德華的歌曲磁帶,小云有一盒梁詠琪的歌曲磁帶,在不交換磁帶的基礎(chǔ)上, 怎樣將兩盒磁帶上的歌曲對錄到對方的磁帶上。1 .略2 .提示:假如e說的是真的,即五個人都說了謊,則假如d說的是
4、真的,即有四個人說了謊,則正確;a、b、c、d、e都說了謊,自相矛盾,排除;a、b、c、它都說了謊,剛好是四個人說了謊,第47頁a、b、d、e都說了謊,四個人說了謊,故 c為a、c、d、e都說了謊,b為假;假如c說的是真的,即有三個人說了謊,則假;假如b說的是真的,即有二個人說了謊,則假如a說的是真的,即只有一個人說了謊,則 b、c、d、e都說了謊,矛盾,故也為假。故只能放d3 .提示:典型題析2中交換兩種飲料和本題中的磁帶對錄問題,都與計算機算法中將要解決的交換兩個變量的值”的問題類似,理解這種解決問題的方法,才能寫出解決問題的步驟。知識點2:計算機解決問題的過程【知識鏈接】本考點要求學(xué)生達
5、到了解”水平。計算機程序(computer program)是指示計算機如何去解決問題或完成任務(wù)的一組可執(zhí)行的指程序設(shè)計(program design)是尋求解決問題的方法,并將其實現(xiàn)步驟編寫成計算機可以執(zhí)行的 程序的過程。程序設(shè)計語言(program language)乏指一切用于書寫計算機程序的語言。注意:程序設(shè)計語言和計算機語言(computer language)!兩個不同的概念,程序設(shè)計語言是 種重要的計算機語言。計算機解決問題和人解決問題有著本質(zhì)的區(qū)別:計算機解決問題要經(jīng)歷分析問題、確定算法、編程求解等基本過程。計算機解決問題的流程如下:開始一分析問題一設(shè)計算法一編寫程序一運行程序
6、一結(jié)束編寫程序日寸,首先要對問題進行詳細(xì)的分析,明確已知條件下的初始狀態(tài)及要達到的目標(biāo),找出求解問題的方法和過程,并抽取出一個數(shù)學(xué)模型,形成算法;然后將這個數(shù)學(xué)模型連同它要處 理的數(shù)據(jù),用計算機能識別的方式描述出來, 使之成為計算機能處理的對象;最后用程序設(shè)計語言 設(shè)計出具體的問題求解過程,形成計算機程序。ibm公司的深藍(lán)”能夠戰(zhàn)勝國際象棋大師卡斯帕羅夫,原因是人們將國際頂尖象棋大師在過去100年問開局和終局的數(shù)十億范例存入計算機數(shù)據(jù)庫, 針對卡斯帕羅夫每一步的對弈,計算機都 從數(shù)據(jù)庫中查找能夠取勝的應(yīng)對步驟。 所以不是 深藍(lán)”戰(zhàn)勝了卡斯帕羅夫,而是縝密的計算機程序 戰(zhàn)勝了卡斯帕羅夫?!炯寄軖?/p>
7、描】利用類比的方法體會計算機解決問題和人解決問題的異同,鍛煉類比、推理的能力?!镜湫皖}析】與人解決問題相比,計算機解決問題的優(yōu)勢有哪些 ?劣勢是什么?分析:計算機具有存儲量大、運算速度快、精確度高、可重復(fù)執(zhí)行命令等優(yōu)點,這些優(yōu)勢是人無法比擬的,但計算機也有自身的劣勢, 那就是它無法完成隨意性強、無邏輯性的隨機問題,計算 機只是一個高級工具。到目前為止,還沒有一臺真正具有人類智能的計算機。【模擬練習(xí)】1. ibm公司的 深藍(lán)”能夠戰(zhàn)勝國際象棋大師卡斯帕羅夫是因為()a.計算機具有很高的智商b.計算機具有很快的運算速度c.計算機事先裝載了很多棋局d.計算機能根據(jù)裝載的棋局,經(jīng)過程序判斷作出對弈選擇
8、2 .利用計算機解決問題的過程描述中,以下說法正確的是 ()a .編寫程序一調(diào)試程序一分析問題一設(shè)計算法b.分析問題一編寫程序一調(diào)試程序一設(shè)計算法c.分析問題一設(shè)計算法一編寫程序一調(diào)試程序d .分析問題一設(shè)計算法一調(diào)試程序一編寫程序3 .名詞解釋:計算機程序程序設(shè)計程序設(shè)計語言參考答案:1. d 2. c 3.略1.1.2算法的描述方法知識點1:算法【知識鏈接】本考點要求學(xué)生達到了解"水平。算法在計算機程序設(shè)計中占有重要地位, 是程序設(shè)計的 靈魂”。世界著名計算機科學(xué)家尼克勞 斯沃斯(n . wirth)指出:算法+數(shù)據(jù)結(jié)構(gòu)(data structure)=gyj。算法具有以下特征。
9、(1)有窮性:一個算法必須保證執(zhí)行有限步之后結(jié)束。(2)確切性:算法的每一個步驟必須有確切的定義。(3)輸入:一個算法有0個或多個輸入,以描述運算對象的初始情況,所謂 0個輸入是指算 法本身確定了初始條件。(4)輸出:一個算法至少有一個輸出,用以反映對輸入數(shù)據(jù)加工后的結(jié)果,沒有輸出的算法 是毫無意義的。(5)可行性:原則上算法能夠精確地運行,而且人們用筆和紙做有限次運算后即可完成。已知最早的算法是考古學(xué)家發(fā)掘出來的大約在35005000年以前的寫在黏土板上的。當(dāng)時為了做數(shù)學(xué)用表,巴比倫人需要解代數(shù)方程,他們的做法是寫出求解的 算法”。這些算法基本上都是對實際數(shù)目的計算。在算法的最后還附有一個短
10、語,這個短語可以粗略地翻譯為這是一個過程這也是最早出現(xiàn)的程序設(shè)計語言的標(biāo)記?!炯寄軖呙琛客ㄟ^數(shù)學(xué)例子,運用類比的方法,加強對算法概念的理解,借鑒數(shù)學(xué)家解決問題的技巧,嘗試運用算法解決問題。【典型題析】1 .數(shù)學(xué)中求1+2+3+-t100的和so高斯用湊數(shù)法:1+100, 2+99,,50+51,然后求和。寫 出高斯求解問題的算法。分析:用湊數(shù)法求1+2+3+-+100的和時,每一組數(shù)的和都相等(和為101),而且共有50組數(shù)??紤]算法的通用性,類似這種求和的算法可描述為:輸入最大項數(shù)n;列式s=(1+n) m2;輸出s的值?!灸M練習(xí)】2 .寫出求解1-2+3-4+99-100的和s的算法。3
11、 .水仙花數(shù)是指一個三位數(shù),它的各位數(shù)的立方和正好等于該數(shù)本身,如: 153=13十53十33, 寫出求解水仙花數(shù)問題的算法。參考答案:1 .提示:循環(huán)使用求和公式:s = s + k * i, k為每一項的符號:k= (-1)(2*i-1)。2 .提示:首先用循環(huán)的方法找到所有的三位數(shù),每找到一個數(shù)(用x來表示這個數(shù))就分解當(dāng)前這個三位數(shù),百位上的數(shù)字a=int(x/100),十位上的數(shù)字 b=int(x-a*100)/10),個位上的數(shù)字c=x-a*100-b*1 ,再判斷x=a3+b3+c3是否成立,若判斷結(jié)果為真,則 x為水仙花數(shù)。知識點2:如何描述算法【知識鏈接】本考點要求學(xué)生達到了
12、解”水平。算法的描述方法有自然語言、流程圖、偽代碼三種形式。自然語言描述算法的優(yōu)點是 描述”接近自然語言,通俗易懂,符合人們的表達習(xí)慣,容易接受。 缺點是缺乏直觀性和簡潔性,在算法表述中容易產(chǎn)生歧義。流程圖是算法的圖形化表示,其描述算法形象、直觀、 容易理解。目前常用的流程圖是由美國 國家標(biāo)準(zhǔn)化協(xié)會(american national standard institute,簡稱ansi)制定的一系列流程圖符號組成(見 教科書中的流程圖符號)的。偽代碼(pseudo code是介于自然語言和計算機程序設(shè)計語言之間的一種算法描述。偽代碼一般用邏輯關(guān)鍵詞連接自然語言或表達式的形式來表述算法。因為算法
13、具有多樣性,到底用什么算法描述一個問題,要具體問題具體分析。【技能掃描】因勢利導(dǎo),培養(yǎng)用算法描述問題的能力,訓(xùn)練正確解決問題的方法,并把數(shù)學(xué)課中的問題用算 法描述出來,達到學(xué)科相融的目的。【典型題析】1 .將求閏年問題的算法用自然語言、流程圖、偽代碼三種方法描述。分析:用自然語言描述閏年問題:step1:輸入年份一 ystep2:如果y能被400整除,則輸出是閏年",結(jié)束程序;否則轉(zhuǎn)到step3step3:如果y能被4整除但不能被100整除,則輸出 是閏年",結(jié)束程序;否則轉(zhuǎn)到step4step4:輸出不是 閏年",結(jié)束程序。用流程圖描述閏年問題:輸入年份一 yi
14、f y能被400整除then輸出是閏年”elseif y能被4整除and y不能被100整除then輸出是閏年”else輸出不是閏年”end ifend if2 .下面關(guān)于算法的說法錯誤的是()。a .算法必須有輸出b .算法必須在計算機上用某種語言實現(xiàn).c.算法不一定有輸入d .算法必須在有限步執(zhí)行后能結(jié)束分析:算法就是解決某一特定類型問題的有限運算序列。一個算法必須在執(zhí)行有限步之后能結(jié) 束;算法中的每一步必須有確切定義;一個算法有0個或多個輸入,也必然有一個或多個輸出。 算 法不等同于程序。一個程序,譬如一個操作系統(tǒng),只要不關(guān)機,它就不會結(jié)束。算法的設(shè)計可以避開具體的計算機和程序設(shè)計語言,
15、也可以借助程序設(shè)計語言中提供的數(shù)據(jù)類型及運算在具體的層次 上實現(xiàn)參考答案:b【模擬練習(xí)】1 .愷撒密碼編寫的信息如下:krz duh brx?你能用自然語言描述翻譯密碼的算法嗎?小知識:公元前60年(兩千多年前),古羅馬統(tǒng)帥 朱利葉斯 愷撒"(caesar)用當(dāng)時發(fā)明的 愷 撒密碼”書寫軍事文書,用于戰(zhàn)時通信。后來他成了古羅馬帝王,就是愷撒”大帝。愷撤加密法,就是字母替換加密,即把消息中每一個字母換成其后的第三個字母。例如:原文:abcdefghijklmnopqrstuvwxyz 或者 abcdefghijklmnopqrstuvwxyz密文:defghijklmnopqrstuv
16、wxyzabc 或者 defghijklmnopqrstuvwxyzabc2 .下面說法正確的是()。a .算法+數(shù)據(jù)結(jié)構(gòu)=程序b .算法就是程序c.數(shù)據(jù)結(jié)構(gòu)就是程序d.算法包括數(shù)據(jù)結(jié)構(gòu)1 .提示:愷撒密碼的翻譯規(guī)律是,對于字符來說,s = chr(asc(x) - 3)。翻譯結(jié)果為how are you?3 . a1.2程序設(shè)計基礎(chǔ)1.2.1 程序設(shè)計語言知識點1:認(rèn)識程序設(shè)計語言【知識鏈接】本考點要求學(xué)生達到了解"水平。程序設(shè)計語言的發(fā)展伴隨著計算機硬件的發(fā)展。程序設(shè)計語言經(jīng)歷了機器語言、匯編語言、高級語言三個階段。高級語言又分為解釋型語言和編譯型語言兩種。機器語言是計算機能直接
17、識別的語言,機器語言是一串由0”和1”構(gòu)成的二進制代碼。人記憶和理解機器語言非常困難,而且容易出錯。匯編語言是一種符號化的機器語言,它用英文助記符代替機器指令,比機器語言容易識別和記 憶,提高了程序的可讀性。它的缺點是依賴機器,不同的機器有不同的指令集,通用性差,使用時 還必須翻譯成目標(biāo)程序執(zhí)行。高級語言是更接近自然語言和數(shù)學(xué)語言的編程語言。它不依賴機器,通用性好,更容易掌握。 高級語言程序的可讀性強,便于修改和維護。解釋型語言的特征是程序邊解釋邊執(zhí)行,解釋一句執(zhí)行一句,速度較慢,其代表語言有qbasic、 lisp。編譯型語言是先用編譯程序?qū)⒃闯绦?翻譯”成機器語言的目標(biāo)程序,再由連接裝配程
18、序進行 裝配,生成可執(zhí)行的程序被計算機執(zhí)行,其代表語言有 visual basic、c/c+等。1954年美國科學(xué)家巴科斯(j. backus)完成了第一個計算機高級語言 一一fortran語言,創(chuàng) 立了描述計算機語言語法的符號集巴科斯范式,摘取了1977年度的圖靈獎”?!炯寄軖呙琛繉W(xué)習(xí)搜集(計算機發(fā)展的)信息的方法,增強自我學(xué)習(xí)的能力,增強自身的知識積累?!镜湫皖}析】1 .簡答題:什么是解釋型語言?什么是編譯型語言?分析:計算機只能直接執(zhí)行機器語言。高級語言編寫的程序必須翻譯成機器語言, 才能被計算機執(zhí)行。翻譯的方式分為編譯型和解釋型用編譯型語言編寫的程序在執(zhí)行之前需要一個專門的編譯程序,把
19、程序編譯成為機器語言的目標(biāo)程序,然后再由連接裝配程序進行連接裝配,生成可執(zhí)行程序,才能被計算機執(zhí)行,比如exe文件。以后運行時不需要翻譯,所以編譯型語言的程序執(zhí)行效率高。用解釋型語言編寫的程序在運行的時候才被翻譯,比如basic語言,專門有一個解釋器能夠直接執(zhí)行basic程序,每個語句都是在執(zhí)行時被翻譯的。這樣解釋型語言每執(zhí)行一次就要翻譯一次, 效率比較低。【模擬練習(xí)】2 .能夠被計算機直接識別的語言是()。a .偽代碼b .局級語言 c.機器語言 d.匯編語言3 .程序設(shè)計語言的產(chǎn)生與發(fā)展所經(jīng)歷的過程不包括以下哪個選項?()a .機器語言b .匯編語言c.初級語言d.高級語言4 .利用bas
20、ic語言編寫的程序源代碼的文件名后綴為()。a. .basb. .cppc. .txtd. .doc5 .簡述計算機語言有哪些,寫出這些計算機語言的名稱。參考答案:1. c 2. c 3. a 4.略知識點2:認(rèn)識可視化編程工具 一一vb語言【知識鏈接】本考點要求學(xué)生達到了解”水平。實現(xiàn)算法的程序設(shè)計語言有多種,visual basic(簡稱vb)是其中一種好學(xué)易懂的語言。visual basic是基于basic的可視化程序語言。所謂可視化程序設(shè)計,主要是指程序設(shè)計人員利 用軟件本身提供的各種控件,像搭積木式地構(gòu)造應(yīng)用程序的各種界面,然后編寫少量的代碼就可以 構(gòu)建應(yīng)用程序。首先要熟悉vb的開發(fā)
21、環(huán)境,理解vb語言是一種可視化、面向?qū)ο蟮某绦蛟O(shè)計語言。啟動vb ,打開vb工作窗口,如下圖所示。窗口的上部是菜單欄和常用工具欄, 窗口左邊是工具箱,中間主要區(qū)域是窗體,右邊是屬性窗 口、工程窗口、窗體布局窗口等。所謂面向?qū)ο蟮某绦蛟O(shè)計,就是面向控件的程序設(shè)計。窗體控件主要是為vb程序提供一個承載其他控件的平臺。 在界面設(shè)計階段,可以把程序需要 的控件添加并排列在窗體上。 按鈕控件主要是設(shè)計執(zhí)行某個操作或執(zhí)行某段程序的切換開關(guān)”設(shè)置按鈕控件的“click事彳)。標(biāo)簽控件主要顯示不希望被用戶修改的文本。文本框控件是一個文本 的編輯區(qū),用戶可以在其中輸入、編輯、顯示文本內(nèi)容。【技能掃描】學(xué)習(xí)在窗體
22、中添加工具箱中的文本框、標(biāo)簽、 按鈕等控件。選中窗體中的某個控件,其相應(yīng)的 屬性窗口亦被選中。了解每個控件的主要屬性,學(xué)習(xí)設(shè)置控件的常用屬性。【典型題析】1.雙擊窗體中的對象后,vb將顯示的窗口是()。a.項目(工程)窗口 b.工具箱c.代碼窗口d.屬性窗口分析:雙擊窗體中的對象,會顯示代碼編輯窗口。程序代碼作為對象的方法”書寫在代碼編輯 窗口中,并且還要指定程序代碼的驅(qū)動事件參考答案:c()。d.不用進入任何模式【模擬練習(xí)】1 . vb有設(shè)計、運行和中斷三種模式,要使用調(diào)試工具應(yīng)該a.進入設(shè)計模式 b.進人運行模式 c.進人中斷模式2 .下列關(guān)于添加控件”的方法正確的是()0a.單擊控件圖標(biāo)
23、,將鼠標(biāo)指針指向窗體,雙擊鼠標(biāo)8 .雙擊工具箱中的控件,即在窗體上出現(xiàn)該控件c.單擊工具箱中的控件,將指針移到窗體上,再單擊d.用鼠標(biāo)左鍵拖動工具箱中的某控件到窗體的適當(dāng)位置9 .下列不屬于vb控件的是()。a.文本框 b.定時器c.窗體布局窗d.命令按鈕參考答案:1. a 2. b 3. c知識點3: vb可視化編程初步【知識鏈接】本考點要求學(xué)生達到理解”水平。了解vb可視化編程的一般步驟,了解運用常用控件編寫的簡單程序,通過簡單程序體會控件 對象的使用,掌握控件對象的屬性、方法、事件等基本概念??梢暬幊痰囊话悴襟E:設(shè)計程序界面一編寫程序代碼一調(diào)試、運行程序面向?qū)ο蟮某绦蛟O(shè)計就是以對象為中
24、心,以事件為過程執(zhí)行的起點。vb提供的可編程事件有單擊(click)、雙擊(dblclick)、力載(load)、按鍵(keypress污,教科書中最常用的是單擊 (click)事 件。方法是對象能夠執(zhí)行的操作,這些操作一般是一個動作或一段程序。例如: form1.cls的作用 是清除窗體form1中的內(nèi)容,end用于結(jié)束程序的運行。每個對象都有自己的名稱,對象有了名稱才能被程序引用。系統(tǒng)為每個對象都規(guī)定了默認(rèn)的名 稱,例如:command label2等。為了便于程序的閱讀和理解,可以自己規(guī)定對象的名稱,在程序中只要引用自己規(guī)定的對象名稱就可以了。一般約定,對象名稱由3個小寫字母組成的前綴(
25、指明對象的類型)和表示該對象作用的字符組成。常用控件名的前綴約定和命名舉例如下。對象的類型意義對象的作用前綴名稱舉例form窗體其它對象的容器(其它對象放在form上)frmfrmfindcommand命令按鈕控制其它對象的運行cmdcmdoklabel標(biāo)簽僅能顯小文字信息lbllblinputtextbox文本框既能顯示文字信息,又能編輯文字(輸入、修改)txttxtsource下面是幾個應(yīng)該了解的文件。.vbp文件:與vb工程有關(guān)的文件和對象清單,是一個文本文件。 (工程文件) .frm文件:是包含窗體及控件的屬性設(shè)置、相關(guān)程序代碼的文件。 (窗體文件) .bas文件:是標(biāo)準(zhǔn)模塊文件。.o
26、cx文件:是vb的擴展控件文件?!炯寄軖呙琛渴煜b集成開發(fā)環(huán)境,理解控件對象的屬性、方法、事件等基本概念和作用。掌握常用的窗 體、命令按鈕、文本框、標(biāo)簽等控件的添加、使用方法。學(xué)會設(shè)置常用控件的屬性?!镜湫皖}析】1. 一只漂亮的酒杯被摔碎了,其中漂亮、酒杯、摔、碎了分別是()。a.對象、屬性、事件、方法 c.屬性、對象、方法、事件b.對象、屬性、方法、事件d.屬性、對象、事件、方法分析:對象的屬性定義其外觀。 方法定義其行為。事件定義其與用戶的交互。 酒杯”是對象,漂亮”是酒杯的屬性,動詞 摔”是事件,摔的結(jié)果 碎了 ”是方法。參考答案:d2. vb是一種面向?qū)ο蟮某绦蛟O(shè)計語言,構(gòu)成對象的三
27、要素是 ()。a.屬性、方法、事件b.控件、屬性、事件c.窗體、控件、過程d.窗體、控件、模塊分析:vb 向?qū)ο蟮某绦蛟O(shè)計語言的精髓是許多相關(guān)對象的有機組合構(gòu)成一個程序系統(tǒng),其中每個對象都有自己的屬性(偏重于可視化特點),有相應(yīng)的程序或 命令動作”構(gòu)成方法,有觸發(fā)這 些方法”的宿動”事件。參考答案:a【模擬練習(xí)】word excel1 .如果要改變窗體的標(biāo)題,需要設(shè)置窗體對象的 ()屬性。a. nameb. captionc. backcolor d. borderstyle2 .下列文件屬于工程文件和窗體文件的是()。a . s3.doc和 t01.vbp b. s3.xls 和 s3.fr
28、m c. t01.vbp 和 s3.frm d. s3.frm和 s3.pdfpdf:便攜式文檔格式,進行文件交換所發(fā)展出的文件格式。3 .窗體的backc010r屬性用于設(shè)置窗體的()。a.高度b.寬度c.背景色d.前景色4 . vb提供的標(biāo)簽控件具有的功能是()o.a.輸入文本b.顯示文本c.計時d.顯示時間參考答案:1. b 2. c 3. c 4. b1.2.2數(shù)據(jù)與運算知識點1:數(shù)據(jù)類型【知識鏈接】本考點要求學(xué)生達到遷移應(yīng)用與熟練操作”水平。vb提供了數(shù)值型、字符串型、布爾型、日期型等基本數(shù)據(jù)類型。數(shù)據(jù)類型:整型(integer),取值范圍(-3276832767);長整型(long
29、);單精度型(single);雙精度型(double);字符串型(string),取值范圍(065535)個字符、不定長字符串:020億個字符);布爾型(boolean),取值為(true 或 false);日期型(date),格式(100/1/19999/12/31)。汪忠:(1)浮點型(單精度型和雙精度型的合稱)數(shù)據(jù)的表示方法:浮點數(shù)在計算機中類似于數(shù)學(xué)中的 實數(shù),比如:304707表示成3.04707e5。(2)字符串型數(shù)據(jù)的表示方法(必須用”引起來):"visual basic"、"245"、"=33+2”等。(3)日期型數(shù)據(jù)的表示方法
30、:用一對“盟把日期或時間括起來,例如:#2008/06/28#表示2008 年6月28日?!炯寄軖呙琛空莆粘S玫臄?shù)據(jù)類型,常用數(shù)據(jù)類型的取值范圍和表示方法。【典型題析】下列哪組數(shù)據(jù)是vb中正確的數(shù)據(jù)表示形式?()a. 3.457e-6.8 b. 3457e-10 c.受5.74d. #2000/06/28#分析:對于不同的數(shù)據(jù)類型有不同的取值范圍和表示方法,選項 a中e的后面應(yīng)是整數(shù),選項b中e前面的數(shù)只能保留一位整數(shù),選項 c中的符號錯誤。參考答案:d【模擬練習(xí)】1 .整型數(shù)據(jù)的取值范圍是: 2 .布爾型數(shù)據(jù)的兩個值是: ?口。3 .寫出下列各表達式的值。(1) "123"
31、; + 45: 。(2) "17" + "2.5": 。 #2008/06/28# - #2008/04/28。(4) #2008/06/28# + 4: 。參考答案:1. -3276832767 2. true false 3. (1)168 (2)172.5 (3)61 (4)2008/7/2知識點2:常量與變量【知識鏈接】本考點要求學(xué)生達到遷移應(yīng)用與熟練操作”水平。1 .在vb中,用常量(constant底示在程序運行過程中事先設(shè)置的、具值不能改變的數(shù)據(jù)。vb中的常量有數(shù)值常量、字符串常量等。常量的定義形式如下:const常量名as類型=表達式2
32、.變量(variable)是內(nèi)存中存放數(shù)據(jù)的存儲單元,其中存放的數(shù)據(jù)稱為變量的值。變量名命名的約定如下:(1)必須以字母或漢字開頭,不能以數(shù)字或其他字符開頭。(2)只能由字母、漢字、數(shù)字和下畫線組成,不能含有小數(shù)點、空格等字符。(3)變量名字符數(shù)不超過255個。(4)變量名不能使用vb中的保留字(即vb專用的有特殊意義的內(nèi)容,如 print、end等)。(5) vb不區(qū)分變量名中字母的大小寫。(6) 變量名最好取有意義的名稱,一般在前面加上類型的縮寫。常用的前綴有:字符型(str)、整型(int)、長整型(lng)、單精度型(sng)、雙精度型(dbl)、布爾型 (bln)、日期型(dtm)。
33、變量使用前一般要先聲明,vb中變量的聲明方法如下。dim 變量名 as 數(shù)據(jù)類型 , 變量名 as 數(shù)據(jù)類型,【技能掃描】掌握常量和變量的定義方法,能根據(jù)實際需要正確地定義常量和變量?!镜湫皖}析】下列哪些是vb中合法的變量名?()a. alphab. 4deltac. printd. integer分析:變量名的命名必須遵守 vb命名變量名稱的約定,可作為 vb變量名的是alpha,其他均不能作為變量名。變量名不能以數(shù)字開頭,所以 4delta不是合法的變量名,integer、print屬于vb中的保留字參考答案:a【模擬練習(xí)】1 .在vb中,下列選項中的兩個變量是同一個變量的是()。a. a
34、1 和 alb. sum和 summaryc. aver和 average d. a1 和 a-12 .在vb中,下列屬于合法的變量名的是()。a. x_yzb. 123abec. integerd. x-y3 .正vb中,下列屬于合法的字符串常數(shù)的是()。a. abc$b. "abc"c. 'abc'd. abc參考答案:1. a 2. a 3. b知識點3:運算符與表達式 【知識鏈接】本考點要求學(xué)生達到遷移應(yīng)用與熟練操作”水平。1 .在vb中,根據(jù)運算功能的不同可將運算符分為算術(shù)運算符、字符串運算符、日期運算符、 關(guān)系運算符和邏輯運算符等。2 .表達式是
35、由變量、常量、運算符、函數(shù)和圓括號等按一定的規(guī)則組合而成的。vb中常用的表達式有算術(shù)表達式、字符串表達式、日期表達式、關(guān)系表達式和邏輯表達式等。算術(shù)運算符要求參與運算的量是數(shù)值型,運算的優(yōu)先級為:指數(shù)取負(fù),乘除法整除,求余加減,運算結(jié)果是數(shù)值型。字符串運算符有 、和“&”,功能是用來連接兩個字符串。當(dāng)使用“十連接一個數(shù)字字符串和一個數(shù)值型表達式時其結(jié)果是數(shù)值型(即兩個數(shù)值之和),用“&'連接時結(jié)果是字符串類型。關(guān)系運算符有:=、=和=。關(guān)系表達式的運算結(jié)果是布爾佰 true或falsa邏輯運算符有:not(取反)、and(與卜or(或),優(yōu)先級為notandor。運算結(jié)
36、果是布爾值true(真) 或 false假)。日期運算符有“+和產(chǎn),輸出結(jié)果為日期型或數(shù)值型數(shù)據(jù)。當(dāng)一個表達式中同時出現(xiàn)多種運算符時,運算符的優(yōu)先級為:算術(shù)運算符 字符串連接運算符 關(guān)系運算符 邏輯運算符?!炯寄軖呙琛磕軐?shù)學(xué)表達式正確地改寫成 vb表達式,正確地計算 vb表達式的運算結(jié)果?!镜湫皖}析】1 .下列各式中均用單個字母表示一個變量,在 vb中,下列表達式中合法的是()。a,ba. a+bc b. abc-8c. p*r*r d. a+b/c(本選項對應(yīng)的數(shù)學(xué)關(guān)系式為: 一不)分析:本題考查vb表達式方面的知識。a選項中bc之間缺少乘號;b選項中除去abc之間缺少乘號外,除號也是錯的
37、,應(yīng)使用 "號;d選項中缺少括號,正確的表達式應(yīng)為(a+b)/c。參考答案:c2 .數(shù)學(xué)關(guān)系式3&x<1位示成正確的vb表達式為()。a, 3<=x<10 b. 3<=x and x<10 c, x>=3 or x<10 d. x<=3 and x<10分析:在vb中,若要表示一個區(qū)間之內(nèi)的數(shù),需要使用邏輯運算符邏輯與“ and參考答案:b【模擬練習(xí)】1 .在vb中,下列邏輯運算符中優(yōu)先級最高的是()a. andb. notc. or2. vb表達式sqr8a2-4*a*c)/2*a中最先進行的運算是(a. ba2b, 4
38、*a3. vb表達式"12"+"34"的值是()。a. "46"b, "1234"4. vb表達式"12"+34的值是()a. "46"b, "1+34"5. vb表達式x+1>x是()。a.算術(shù)表達式b.非法表達式c. a*cc "12""34"c "12""34"c.字符串表達式d.以上均不正確)。d. 2*ad. 46d. 46d.關(guān)系表達式參考答案:1. b 2.
39、 a 3. b 4. d 5. d知識點4:常用語句 【知識鏈接】本考點要求學(xué)生達到遷移應(yīng)用與熟練操作"水平2 .賦值語句的格式:變量名=表達式或?qū)ο竺?屬性名二表達式。賦值語句的作用是把右邊的數(shù)或表達式的值賦給左邊的變量或?qū)ο竺?屬性名3 . print語句的格式為:對象名.print表達式列表。print語句是vb中的輸出語句,其功能是在指定的對象上輸出結(jié)果,默認(rèn)對象為當(dāng)前窗體。print語句后面無表達式時,表示換行;例: printprint顯示項后面沒有符號,表示顯示完換行;例: print 123;“456” ;print語句顯示項用分號分隔,表示后續(xù)顯示項緊湊顯示;例:
40、print 123;“456” ;print語句顯示項用逗號分隔,表示后續(xù)顯示項分區(qū)顯示,每區(qū)為 14個字符位。例:print123,456”4 .注釋語句的格式:rem注釋內(nèi)容、'注釋內(nèi)容。當(dāng)使用rem語句時,必須單獨寫一行。使用 “'的注釋語句時,可以單獨寫一行,也可以跟在 其他語句的后面。5 .結(jié)束語句的格式:end。結(jié)束語句是vb中強制結(jié)束程序運行的語句?!炯寄軖呙琛空_理解賦值語句,掌握 print語句和end語句的作用,會正確書寫這些語句?!镜湫皖}析】1 .如果x=5, y=3,執(zhí)行下列語句:print "x=" x, "y="
41、; y則輸出結(jié)果為()。a. x=5y=3 b. x=5c. x=5y=3 d. x=5,y=3y=3分析:print語句的輸出項可以是一個或多個,如果輸出多個內(nèi)容,則各輸出內(nèi)容之間可以用逗號或分號分隔;若使用逗號,則逗號后的顯示項按分區(qū)格式輸出;若使用分號,則分號后面內(nèi)容緊跟前面內(nèi)容輸出。例如:當(dāng) a=5 , b=3時,執(zhí)行下列語句:print "a=" a, "b=" b輸出如下結(jié)果:a=5b=3print "a=" a; "b=" b輸出如下結(jié)果:a=5 b=3print "a=" a;p
42、rint "b=" b輸出如下結(jié)果:a=5 b=3print "a=" aprint "b=" b輸出如下結(jié)果:a=5b=3參考答案:a2 .下列關(guān)于賦值語句的敘述錯誤的是()。a. a = b的作用是將b的值賦給變量a,變量b的值不變b. a = 123表示將數(shù)值123賦給變量ac. a = a+ b表示將變量a的值與變量b的值相加后,再賦值給變量 ad . n = n + 1在vb中不成立分析:本題要求知道在vb中,“二是賦值符號,它的含義是將“二右邊表達式的值賦給左邊的變量。它的作用不同于數(shù)學(xué)中的等號“二;'參考答案:d
43、【模擬練習(xí)】1 .下列賦值語句正確的是()。2a.x- y = 7 b y = 3.14* r c. y - 5 = x + 10 d, y = x 302 .(多選)為了給三個變量賦初值1,下列正確的賦值語句是()。a. x=1 : y=1: z=1 b. x=1 , y=1, z=1 c. x=y=z=1 d. x=1 : y=x: z=y3 .運行vb程序段a =歡迎您” :print北京”,a,屏幕上顯示的是()。a.北京a b.北京歡迎您 c.北京 a d.北京 歡迎您參考答案:1. d 2. ad 3. d知識點5:常用函數(shù)【知識鏈接】本考點要求學(xué)生達到遷移應(yīng)用與熟練操作”水平。1
44、 .交互函數(shù)。inputbox()函數(shù)是一個輸入函數(shù)。格式:inputbox(提示,標(biāo)題兒默認(rèn)值兒x坐標(biāo)兒y坐標(biāo))例如:inputbox(請輸人一個數(shù)”)(2)msgbox()函數(shù)主要用來顯示多種樣式的消息對話框。格式:msgbox(提示信息,按鈕兒 標(biāo)題)例如:msgbox(運行正確”,16,循環(huán)結(jié)構(gòu)”)2 .數(shù)學(xué)函數(shù)。般和數(shù)學(xué)函數(shù)用于數(shù)學(xué)運算,數(shù)學(xué)函數(shù)主要有以下幾種(詳見下表)。函數(shù)功能實例結(jié)果abs(x)求x的絕對值abs(-3.7)3.7sqr(x)求x的平力根sqr(25)5sin(x)求x的正弦值sin(30*3.14/180)0.499770102643102cos(x)求x的余
45、弦值cos(30*3*14/180)0.866158094405463tan(x)求x的正切值tan(60*3.14/180)1.72992922008979atn(x)求x的余切值4*atn(1)3.14159265358979exp(x)求指數(shù)函數(shù)exexp(2)7.38905609893065log(x)求x的自然對數(shù)值log(10)2.30258509299405int(x)取不大于x的最大整數(shù)int(-5.4)-6rnd產(chǎn)生0,1)之間的小數(shù)rnd返回一個隨機數(shù)注意:三角函數(shù)中的參數(shù)使用弧度數(shù);rnd函數(shù)返回0, 1)之間的一個隨機實數(shù),randomize結(jié)合使用,randomize
46、為初始化隨機數(shù)生成器。3 .字符串函數(shù)vb提供了豐富的字符串處理函數(shù),常用的字符串函數(shù)有以下幾種(詳見下表)。函數(shù)功能結(jié)果類型實例結(jié)果_en(x)求字符串的長度整數(shù)len( modern'")6_eft(x, n)截取字符用左邊n個字符字符串型left( 20080107”, 4)2008”mid(x, m, n)從字符串第m個字符開始截取n個字符字符串型mid( “20080107 3, 2)08”right(x, n)截取字符串右邊n個字符字符串型right( 2008 奧運 ”,2)奧運”string(n, x)生成指定長度的指定字符的字符串字符串型string(3,
47、“8”)888”注意:所有字符串需要使用“括起來。4.日期函數(shù)。date()和time()函數(shù)分別用來返回當(dāng)前日期與時間,day()、month。、year()函數(shù)分別返回指定日期的日數(shù)、月數(shù)和年數(shù)。5.常用轉(zhuǎn)換函數(shù)。vb中常用的轉(zhuǎn)換函數(shù)有以下幾種(詳見下表)函數(shù)功能結(jié)果類型實例結(jié)果val(數(shù)值型字符串)將數(shù)值型字符串轉(zhuǎn)換為數(shù)值數(shù)值型val("99")+val("88")187str(數(shù)值)將數(shù)值轉(zhuǎn)換為字符串字符串型str(5)"5"chr(字符代碼)求字符的asc碼對應(yīng)的字符字符串型chr(97)"a"asc(字
48、符)求字符對應(yīng)的字符asc代碼整數(shù)asc("a")97cint(表注式)將表達式結(jié)果作四舍五入處理整型cint(4.5)5【技能掃描】掌握常用函數(shù)的用法,返回值的類型等?!镜湫皖}析】下列哪個表達式可以產(chǎn)生任意兩位整數(shù) ?()a. int(rnd * 90) + 10 b. int(rnd * 10) c. int(rnd * 100) d. rnd * 90 + 10分析:rnd函數(shù)返回0, 1)之間的一個隨機小數(shù),它和 randomize結(jié)合使用。如要隨機產(chǎn)生一個從n到m之間的整數(shù),表達式是int(rnd*(m - n + 1) + n(m, n為大于1的自然數(shù))。a選項
49、可產(chǎn) 生10, 99的整數(shù);b選項可產(chǎn)生0, 9的整數(shù);c選項可產(chǎn)生0, 99的整數(shù);d選項可產(chǎn)生10, 100) 的數(shù)。參考答案:a【模擬練習(xí)】1 .在vb中,表達式5 mod 3+35*2的值是()。a. 0b. 2c. 4d. 62 .在 vb 中,int(198.555 * 100 + 0.5) / 100 的值是()。a. 198b. 199.63.在vb環(huán)境下,以下運算結(jié)果包為a . (x <= 4) and (x >= 6)c. (x >= 4) and not (x >= 6)4.在vb中,三個邏輯運算符 not、a . and>not>or
50、 b. not>and>orc. 198.56d. 200true的表達式是()。b. (x >= 4) or (x <= 6)d. not (x <> 4)and、or運算的優(yōu)先級從高到低的順序是()。c. or>not>and d. not>or>and5 .在vb中,rnd函數(shù)不可能的取值是()。a. 0.1b. 1c. 0.1234d. 0.00056 .在vb中,產(chǎn)生30, 50)之間的整數(shù)的表達式是()。a. int(rnd * 50) b. int(rnd * 20) + 30 c. int(rnd * 30) + 20
51、 d. int(rnd * 30)參考答案:1. b 2. c 3. b 4, b 5. b 6. b1.2.3順序結(jié)構(gòu)【知識鏈接】本考點要求學(xué)生達到遷移應(yīng)用與熟練操作”水平。vb程序有三種基本結(jié)構(gòu),即順序結(jié)構(gòu)、選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)。順序結(jié)構(gòu)是三種結(jié)構(gòu)中最基本 的程序結(jié)構(gòu),在順序結(jié)構(gòu)的程序中,算法的各個步驟是按語句的先后順序執(zhí)行的。 在程序的執(zhí)行過 程中沒有分支,沒有重復(fù)?!炯寄軖呙琛空莆枕樞蚪Y(jié)構(gòu)程序的執(zhí)行過程,會編寫和調(diào)試順序結(jié)構(gòu)程序?!镜湫皖}析】已知長方體的長、寬、高。編寫程序求長方體的表面積和體積。分析:問題分析:設(shè)長方體的長、寬、高分別為 x、y、z,長方體的六個面兩兩相等:表面積為:s
52、 = 2 * (x * y + y * z + z * x);體積為:v = x * y * z。設(shè)計算法:輸入x、v、z的值計算 s = 2 * (x * y + y * z + z * x)計算 v = x * y * z輸出s、v的值。設(shè)計界面:將命令按鈕添加到窗體中。編寫程序:private sub command1_click()dim x as single, y as single, z as single, s as single, v as singlex = val(inputbox("x=","輸入長")y = val(inputb
53、ox("y=","輸入寬")z = val(inputbox("z=","輸入高")s = 2 * (x * y + y * z + z * x)v = x * y * zprint "表面積 s=" s,"體積 v=" vend sub調(diào)試程序:將程序輸入到代碼窗口,運行程序時依次輸入長方體的長、寬、高的值,分析運行結(jié)果【模擬練習(xí)】1.寫出下列程序段的運行結(jié)果。x = 17 : y = 5xi = x + y : y = x - yxii = x - yprint x輸出:
54、2 .寫出下列程序段的運行結(jié)果。pi = 3.14d = val(inputbox("d=")r = d / 2s = pi * r * rprint "s=" s輸入:4123,輸出結(jié)果為321。輸出:3 .從鍵盤上輸人一個三位數(shù),然后將它反向輸出。例如輸入a =val(inputbox("請輸入一個三位數(shù)")bw = a 100sw = (a - bw * 100) 10gw =b = gw * 100 + sw * 10 + bwprint 參考答案:1. 5 2. s=12.56 3.a mod 10 b1.2.4選擇結(jié)構(gòu)知識
55、點1: if語句【知識鏈接】本考點要求學(xué)生達到遷移應(yīng)用與熟練操作”水平。1 .單分支if語句的格式:if <關(guān)系表達式> then 語句塊end if2 .雙分支if語句的格式:if <關(guān)系表達式> then 語句塊1else語句塊2end if3 .使用if語句的多層嵌套還可以實現(xiàn)程序的多分支結(jié)構(gòu),但程序結(jié)構(gòu)較煩瑣?!炯寄軖呙琛空莆読f語句的兩種格式以及執(zhí)行過程,能根據(jù)實際問題設(shè)置if語句中的條件,能正確調(diào)試分支結(jié)構(gòu)的程序。了解if語句的多重嵌套?!镜湫皖}析】求函數(shù)y的值(當(dāng)x<=0時,y=2x-5,否則y=4x)(x的值在程序中通過調(diào)用inputbox函數(shù),在
56、彈 出的標(biāo)準(zhǔn)輸入對話框中輸入)。private sub command1_click()dim x, y as integerx = val(inputbox("請輸入 x 的值")if x <= 0 then y =else y =end ifprint "y="end sub4 析:這是一道求解分段函數(shù)的題,程序中采用雙分支語句,x<=0時,計算第一個分支y=2x-5;當(dāng)x<=0條件為假時,計算第二個分支y=4x。參考答案:2 * x -54 * x y【模擬練習(xí)】1 .關(guān)于if x = 1 then y = 1語句,下列說法正確的是()。a . x = 1和y = 1均為賦值語句b. x = 1和y = 1均為關(guān)系表達式c. x = 1為關(guān)系表達式,y = 1為賦值語句 d. x = 1為賦值語句,y = 1為關(guān)系表達式2.完善程序。下面程序的功能是在文本框 text1中輸入任意一個數(shù),判斷這個數(shù)是正數(shù)、負(fù) 數(shù)、還是零,并輸出判斷結(jié)果。private sub com
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年肉牛牛犢項目投資可行性研究分析報告
- 2025年人工智能項目可行性研究報告
- 賓館管理系統(tǒng)可行性分析報告
- 2025-2030年手工陶藝擺件制作企業(yè)制定與實施新質(zhì)生產(chǎn)力戰(zhàn)略研究報告
- 2025年半導(dǎo)體真空閥門市場調(diào)查報告
- 2025-2030年整形外科手術(shù)模擬系統(tǒng)行業(yè)深度調(diào)研及發(fā)展戰(zhàn)略咨詢報告
- 2025-2030年拔罐療法效果評估軟件行業(yè)深度調(diào)研及發(fā)展戰(zhàn)略咨詢報告
- 2025年中國折手拼版軟件行業(yè)市場發(fā)展前景及發(fā)展趨勢與投資戰(zhàn)略研究報告
- 2025-2030年振動按摩治療床行業(yè)深度調(diào)研及發(fā)展戰(zhàn)略咨詢報告
- 2025-2030年手拋接彩環(huán)行業(yè)跨境出海戰(zhàn)略研究報告
- 2025云南中煙再造煙葉限責(zé)任公司招聘高頻重點提升(共500題)附帶答案詳解
- DB13-T 6033-2024 半導(dǎo)體器件低濃度氫效應(yīng)試驗方法
- 《保利公司簡介》課件
- 中藥硬膏熱貼敷治療
- 醫(yī)保藥店員工培訓(xùn)管理制度
- 2025年中考語文文言文專項訓(xùn)練:《愚公移山》對比閱讀(含答案)
- 神經(jīng)外科患者臥位管理
- 2024年高頻脈沖電源項目可行性研究報告
- 部編人教版三年級下冊語文教案(表格版)
- 2024年北京二中高一(上)段考一化學(xué)試題及答案
- cnc加工崗前培訓(xùn)
評論
0/150
提交評論