• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      Visual Basic程序設(shè)計(jì)中循環(huán)結(jié)構(gòu)語句的探討

      2018-07-24 10:44:36何成
      科技資訊 2018年5期
      關(guān)鍵詞:步長

      何成

      摘 要:本文主要介紹了循環(huán)語句構(gòu)成的3個(gè)基本要素:初始值、循環(huán)條件、使循環(huán)趨于結(jié)束的語句,詳細(xì)解釋了“當(dāng)型循環(huán)”和“直到型循環(huán)”2種構(gòu)成形式及二者的相似與區(qū)別。通過對具體的數(shù)學(xué)問題求解對比分析了Visual Basic程序設(shè)計(jì)語言中6中基本的語法結(jié)構(gòu),并描述了2種Exit語句的用途并對應(yīng)實(shí)際的具體案例。本人為Visual Basic程序設(shè)計(jì)初學(xué)者提供了一個(gè)有效的學(xué)習(xí)利器,使初學(xué)者從形式靈活多樣的語法結(jié)構(gòu)中脫離開來并真正掌握程序設(shè)計(jì)的主旨。

      關(guān)鍵詞:循環(huán)條件 步長 事件驅(qū)動

      中圖分類號:G712 文獻(xiàn)標(biāo)識碼:A 文章編號:1672-3791(2018)02(b)-0189-02

      程序設(shè)計(jì)語言語句結(jié)構(gòu)一般分為順序結(jié)構(gòu)、選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu),順序結(jié)構(gòu)和選擇結(jié)構(gòu)只能處理一些簡單的不需要重復(fù)的問題,但在解決實(shí)際問題過程中,有些問題是在某一特定條件下在被反復(fù)的執(zhí)行,需要對某條語句或某段語句反復(fù)執(zhí)行,這種語句就是循環(huán)結(jié)構(gòu)。

      Visual Basic是目前常用的面向?qū)ο蟪绦蛟O(shè)計(jì)語言,它是在Basic語言基礎(chǔ)上發(fā)展而來的,具有可視化的圖形界面,以事件驅(qū)動的方式為運(yùn)行的機(jī)制,功能比較強(qiáng)大。Visual Basic循環(huán)語句形式非常靈活,它不但提供了6種基本的循環(huán)語句格式,還提供了Exit語句參數(shù),靈活多樣的變化形式往往造成初學(xué)者的困惑,本文將對各語句形式做統(tǒng)一的辨析與討論,希望可以成為VB使用者的有效的利器。

      1 循環(huán)語句基本思想

      1.1 構(gòu)成循環(huán)的基本要素

      循環(huán)語句由3個(gè)基本要素構(gòu)成:循環(huán)的初始值、循環(huán)條件、使循環(huán)趨于結(jié)束的語句,有很多地方簡單的稱這3者為循環(huán)初值、循環(huán)終止及循環(huán)變化值。一個(gè)循環(huán)體必須由這3部分構(gòu)成,否則很容易出現(xiàn)死循環(huán),一個(gè)程序設(shè)計(jì)初學(xué)者最容易犯的錯(cuò)誤就是編寫死循環(huán)。

      循環(huán)的初始值是設(shè)置循環(huán)變量的初值;循環(huán)條件表達(dá)式作為設(shè)置循環(huán)終止的條件,當(dāng)條件為真,則繼續(xù)執(zhí)行循環(huán)體,否則結(jié)束循環(huán);使循環(huán)趨向于結(jié)束的語句,一般是以改變循環(huán)變量值的形式出現(xiàn),很多時(shí)候也稱之為“步長”,這也是初次接觸循環(huán)語句的程序設(shè)計(jì)者最容易忽略的地方。

      1.2 循環(huán)語句的分類

      循環(huán)語句一般由“當(dāng)型循環(huán)”和“直到型循環(huán)”2種形式構(gòu)成,二者的區(qū)別在于“當(dāng)型循環(huán)”先判斷循環(huán)終止條件,滿足此條件則執(zhí)行循環(huán)體語句,而“直到型循環(huán)”是先執(zhí)行一次循環(huán)體語句再判斷循環(huán)條件。這2種語句一般情況下并無區(qū)別,只有當(dāng)循環(huán)的初始值不滿足循環(huán)條件時(shí),“當(dāng)型循環(huán)”一次循環(huán)語句沒有執(zhí)行,而“直到型循環(huán)”執(zhí)行了一次循環(huán)語句。

      1.3 循環(huán)結(jié)構(gòu)的應(yīng)用

      循環(huán)語句的用處非常靈活,可解決已知循環(huán)次數(shù)的問題,如:求自然數(shù)1~100的累加和是多少?可以解決循環(huán)次數(shù)不固定的問題,如:表達(dá)式s=1+2+……+n中,當(dāng)s〉3000是n的值最小是多少?這2種問題均可以通過設(shè)置初值、終止及步長來解決。

      2 Visual Basic中的循環(huán)語句形式

      2.1 基本語句形式

      Visual Basic提供了6種基本的循環(huán)語句,分別是:While語句、Do while……loop語句、Do……loop while語句、Do Until……loop語句、Do……loop Until語句、For語句。Visual Basic還提供了一種特殊的Exit語句可以跳出循環(huán),它具有2種基本形式,分別是:Exit do語句,Exit for語句。

      2.2 基本循環(huán)語句的具體例題分析

      此處以循環(huán)語句的入門程序“求自然數(shù)1~100的累加和是多少?”為例,分別利用不同的語句實(shí)現(xiàn)對問題的求解,此處為了重點(diǎn)對比分析循環(huán)語句構(gòu)成的差異,而暫且忽略聲明語句等一些基本語句,其基本思想同樣適用于其他程序設(shè)計(jì)語言。這里設(shè)置存儲累加和的變量為s,并通過s=0對變量s賦初值;設(shè)置循環(huán)變量為i,并通過i=1對變量i賦初值。具體循環(huán)結(jié)構(gòu)如表1所示。

      這里前5種一般用于求解循環(huán)終止條件已知的問題,最后一種一般用于求解已知循環(huán)次數(shù)的問題(當(dāng)循環(huán)變量步長為1此處可以省略step1)。而前3種是先判斷循環(huán)條件再執(zhí)行循環(huán)體,第4及第5種是后判斷循環(huán)條件再執(zhí)行循環(huán)體,這里如果循環(huán)變量的初始值i=101,則前3種程序運(yùn)行的結(jié)果s為0,而第4及第5種程序運(yùn)行的結(jié)果s為101。

      本程序例題為各種程序設(shè)計(jì)語言循環(huán)結(jié)構(gòu)的入門程序,以此程序?yàn)榛A(chǔ)通過簡單修改循環(huán)的初值、終值、變化值可以求解很多問題,例如:自然數(shù)1~100的偶數(shù)和是多少?自然數(shù)1~100的奇數(shù)和是多少?100~200間所有自然數(shù)的和是多少?6的階乘是多少?根據(jù)特定的數(shù)學(xué)公式,可以求解圓周率π及自然對數(shù)e等等復(fù)雜的問題,看似復(fù)雜的問題難處只在于數(shù)學(xué)求解公式,程序設(shè)計(jì)思想跟本題無任何不同之處。

      2.3 基本循環(huán)語句的各語句適用范圍

      很多題目可以采用任何一種語句實(shí)現(xiàn),如上文所示例題,但For語句形式上簡單明了,它集循環(huán)初值、終值、步長為一條語句,但它適用范圍窄,如果循環(huán)次數(shù)不確定則不能用此語句求解。而另外5種語句語法靈活,基本可以完成各種各樣的循環(huán)操作。

      2.4 循環(huán)語句中的Exit語句

      Exit語句分為Exit do語句和Exit for語句2種。其中,Exit do語句用于Do……loop循環(huán)體中,當(dāng)程序中遇到Exit do語句則跳出循環(huán),執(zhí)行l(wèi)oop后語句;Exit for語句用于For……next循環(huán)體中,當(dāng)程序中遇到Exit for語句則跳出循環(huán),執(zhí)行next后語句。

      這里以求解上文中提到的“表達(dá)式s=1+2+……+n中,當(dāng)s〉3000是n的值最小是多少?”為例進(jìn)行程序的簡單編寫。這里設(shè)置存儲累加和的變量為s,并通過s=0對變量s賦初值;設(shè)置循環(huán)變量為i,并通過i=1對變量i賦初值。則題目的具體求解過程如表2所示。

      循環(huán)語句還可以解決“水仙花數(shù)”、“素?cái)?shù)”、“完數(shù)”及“最大公約數(shù)”等這種有趣的數(shù)學(xué)問題,還可以通過雙重循環(huán)來解決“排序”、“楊輝三角”、“百錢百雞”等復(fù)雜的數(shù)學(xué)問題,對于常見的“雞兔同籠”也可輕易求解。

      3 結(jié)論

      (1)程序設(shè)計(jì)語言語句結(jié)構(gòu)一般分為順序結(jié)構(gòu)、選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu),順序結(jié)構(gòu)和選擇結(jié)構(gòu)只能處理一些簡單的不需要重復(fù)的問題,而循環(huán)語句可以解決對某條語句或某段語句反復(fù)執(zhí)行的問題。

      (2)循環(huán)語句由循環(huán)的初始值、循環(huán)條件、使循環(huán)趨于結(jié)束的語句3個(gè)基本要素構(gòu)成,循環(huán)語句一般由“當(dāng)型循環(huán)”和“直到型循環(huán)”2種形式構(gòu)成,當(dāng)循環(huán)的初始值不滿足循環(huán)條件時(shí)2種語句運(yùn)算結(jié)果不同。

      (3)以求解自然數(shù)1~100累加和為例對6種Visual Basic基本循環(huán)語句結(jié)構(gòu)作了對比分析,辨析了各種結(jié)構(gòu)的適用范圍和優(yōu)缺點(diǎn)。并具體解釋了“當(dāng)型循環(huán)”和“直到型循環(huán)”2種形式對程序結(jié)果的影響。

      參考文獻(xiàn)

      [1] FrancescoBalena著,翔實(shí)組,翔實(shí)組.Visual Basic 6編程技術(shù)大全[J].2000.

      [2] 求是科技,Visual Basic 6.0程序設(shè)計(jì)與開發(fā)技術(shù)大全[M].北京:人民郵電出版社,2006.

      [3] 李曉輝,肖蓉暉.用VisualBasic編寫控制程序方法[J].計(jì)算機(jī)工程與應(yīng)用,1998(6):50-53.

      [4] 龔沛曾,陸慰民,楊志強(qiáng).Visual Basic程序設(shè)計(jì)簡明教程[M].2版.北京:高等教育出版社,2003.

      [5] 劉圣才,李春葆.Visual Basic 6程序設(shè)計(jì)導(dǎo)學(xué)[M].北京:清華大學(xué)出版社,2002.

      [6] 張艷.新編Visual Basic程序設(shè)計(jì)教程:Visual Basic程序設(shè)計(jì)教程[M].北京:清華大學(xué)出版社,2014.

      [7] 劉剛.Visual Basic程序設(shè)計(jì)與應(yīng)用案例[M].北京:高等教育出版社,2003.

      [8] 張東亮,張鑫,朱莉娟.新編VISUAL BASIC程序設(shè)計(jì)教程[M].北京:航空工業(yè)出版社,2005.

      [9] 張榮華,殷士勇.Visual Basic程序設(shè)計(jì)與應(yīng)用[M].北京:清華大學(xué)出版社,2008.

      [10]教傳艷,王果.Visual Basic 6.0程序設(shè)計(jì)完全自學(xué)手冊[M].北京:人民郵電出版社,2009.

      猜你喜歡
      步長
      基于Armijo搜索步長的BFGS與DFP擬牛頓法的比較研究
      基于隨機(jī)森林回歸的智能手機(jī)用步長估計(jì)模型
      基于Armijo搜索步長的幾種共軛梯度法的分析對比
      一種改進(jìn)的變步長擾動觀察法在光伏MPPT中的應(yīng)用
      電子測試(2018年13期)2018-09-26 03:29:34
      一種基于變抽頭長度的變步長LMS算法
      電子測試(2018年10期)2018-06-26 05:53:52
      一種基于雙曲余弦型變步長LMS 算法研究
      滯環(huán)控制的變步長MPPT算法實(shí)驗(yàn)研究
      電測與儀表(2016年6期)2016-04-11 12:07:58
      基于動態(tài)步長的無人機(jī)三維實(shí)時(shí)航跡規(guī)劃
      基于逐維改進(jìn)的自適應(yīng)步長布谷鳥搜索算法
      改進(jìn)變步長LMS算法在軟起動諧波檢測中的應(yīng)用
      广安市| 定结县| 丁青县| 林西县| 伊金霍洛旗| 平潭县| 玛曲县| 汝南县| 巴东县| 临海市| 静乐县| 横山县| 贵州省| 垫江县| 黎川县| 鹤壁市| 通海县| 深泽县| 喀喇| 鹿泉市| 双江| 台南市| 彩票| 惠来县| 宜丰县| 兴城市| 留坝县| 平安县| 岑巩县| 德钦县| 合阳县| 清原| 贞丰县| 长宁县| 新源县| 嵩明县| 广饶县| 莫力| 沙湾县| 清徐县| 顺昌县|