亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        Visual Basic程序設(shè)計(jì)中Tab函數(shù)在打印圖形中的使用技巧

        2012-04-29 00:00:00高琦唐思源宮杰

        摘要:文章分析總結(jié)了Visual Basic程序設(shè)計(jì)中Tab函數(shù)在打印圖形時(shí),各字符位置的定位方法和技巧,利用Tab函數(shù)的定位特點(diǎn)打印輸出各種圖形。

        關(guān)鍵詞:Visual Basic程序設(shè)計(jì);Tab函數(shù);定位函數(shù);雙重循環(huán);定位

        中圖分類(lèi)號(hào):TP311 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1007-9599 (2012) 15-0000-02

        Visual Basic程序設(shè)計(jì)中,在對(duì)象上輸出信息的常用方法是Print方法,其語(yǔ)法形式為:[對(duì)象.]Print[{Spc(n)|Tab(n)}][表達(dá)式列表][;|,]。其中Spc(n)與Tab(n)是Print方法中的定位函數(shù):Spc(n)用于在輸入時(shí)插入n個(gè)空格;Tab(n)用于在輸出表達(dá)式列表前向右移動(dòng)n列。Spc函數(shù)與Tab函數(shù)的作用類(lèi)似,但是Tab函數(shù)從對(duì)象的左端開(kāi)始計(jì)數(shù),而Spc函數(shù)表示兩個(gè)輸出項(xiàng)之間的間隔。我們?cè)诰幊讨杏龅綀D形打印的問(wèn)題時(shí),一般采用循環(huán)控制每行打印的字符個(gè)數(shù),關(guān)于字符位置的確定,就可以用Tab函數(shù)進(jìn)行定位。

        1 打印對(duì)齊圖形

        例:打印5行5列的“*“圖形,且每行的每個(gè)“*”之間相隔兩個(gè)打印列,如圖:

        * * * * *

        * * * * *

        * * * * *

        * * * * *

        * * * * *

        對(duì)齊圖形

        我們可以利用雙重循環(huán),其中外循環(huán)控制打印的行數(shù),內(nèi)循環(huán)控制每行打印的字符個(gè)數(shù)。為了保證每個(gè)“*“之間相隔2個(gè)打印列,我們就可以利用Tab(n)函數(shù),使n=2*(內(nèi)層循環(huán)變量-1)+1。代碼如下:

        Private Sub Form_Click()

        Dim i%,j%

        For i = 1 To 5 '打印五行

        For j = 1 To 5 '每一行打印5個(gè)\"*\"

        Print Tab(2 * (j - 1) + 1); \"*\";

        Next j

        Next i

        End Sub

        2 打印上三角圖形

        例:打印5行5列“*”遞減圖形,且每行每個(gè)“*”之間相隔2個(gè)打印列,如圖

        * * * * * * * * * *

        * * * * * * * *

        * * * * * *

        * * * *

        * *

        左對(duì)齊上三角 右對(duì)齊上三角

        上三角圖形與對(duì)齊圖形相比,上三角圖形每一行圖形比下一行多一個(gè)“*”,所以我們只要把內(nèi)層循環(huán)控制的打印的字符個(gè)數(shù)進(jìn)行遞減,便可以得到上三角圖形:每行打印位置定位在左端第一列,“*”個(gè)數(shù)逐行遞減,便得到左對(duì)齊上三角圖形;每行打印位置的定位比上一行多一列,“*”個(gè)數(shù)逐行遞減,便得到右對(duì)齊上三角圖形。代碼如下

        左對(duì)齊上三角:

        Private Sub Form_Click()

        Dim i%, j%

        For i = 1 To 5

        For j = 1 To 5 - i + 1 '每行打印位置定位在左端第一列,“*”個(gè)數(shù)逐行遞減

        Print Tab(2 * (j - 1) + 1); \"*\";

        Next j

        Next i

        End Sub

        右對(duì)齊上三角:

        Private Sub Form_Click()

        Dim i%, j%

        For i = 1 To 5

        For j = i To 5 '每行打印位置的定位比上一行多一列

        Print Tab(2 * (j - 1) + 1); \"*\";

        Next j

        Next i

        End Sub

        3 打印下三角圖形

        例:打印5行5列“*”遞增圖形,且每行每個(gè)“*”之間相隔2個(gè)打印列,如圖

        * *

        * * * *

        * * * * * *

        * * * * * * * *

        * * * * * * * * * *

        左對(duì)齊下三角 右對(duì)齊下三角

        下三角圖形與對(duì)齊圖形相比,上三角圖形每一行圖形比下一行少一個(gè)“*”,所以我們只要把內(nèi)層循環(huán)控制的打印的字符個(gè)數(shù)進(jìn)行遞增,便可以得到上三角圖形:每行打印位置定位在左端第一列,“*”個(gè)數(shù)逐行遞增,便得到左對(duì)齊上三角圖形;每行打印位置的定位比上一行少一列,“*”個(gè)數(shù)逐行遞增,便得到右對(duì)齊上三角圖形。代碼如下

        左對(duì)齊下三角:

        Private Sub Form_Click()

        Dim i%, j%

        For i = 1 To 5

        For j = 1 To i '每行打印位置定位在左端第一列,“*”個(gè)數(shù)逐行遞增

        Print Tab(2 * (j - 1) + 1); \"*\";

        Next j

        Next i

        End Sub

        右對(duì)齊下三角:

        Private Sub Form_Click()

        Dim i%, j%

        For i = 5 To 1 Step -1 '每行打印位置的定位比上一行少一列

        For j = i To 5 '\"*\"個(gè)數(shù)逐行遞增'

        Print Tab(2 * (j - 1) + 1); \"*\";

        Next j

        Next i

        End Sub

        4 打印中間對(duì)齊圖形

        例:打印九行五列中間對(duì)稱(chēng)圖形,且每行每個(gè)“*”之間相隔2個(gè)打印列,如圖:

        * *

        * * * *

        * * * * * *

        * * * * * * * *

        * * * * * * * * * *

        * * * * * * * *

        * * * * * *

        * * * *

        * *

        左對(duì)齊中間對(duì)稱(chēng)圖形 右對(duì)齊中間對(duì)稱(chēng)圖形

        根據(jù)圖形分析,上三角與下三角圖形的結(jié)合便可以構(gòu)成中間對(duì)稱(chēng)圖形:左對(duì)齊下三角與左對(duì)齊上三角組合,構(gòu)成左對(duì)齊中間對(duì)稱(chēng)圖形;右對(duì)齊下三角與右對(duì)齊上三角組合,構(gòu)成右對(duì)齊中間對(duì)稱(chēng)圖形。在代碼中,欲用循環(huán)表示出上三角與下三角圖形結(jié)合的特點(diǎn),可以使外層循環(huán)變量的初值與終值取一組對(duì)稱(chēng)的相反數(shù)(-4 to 4 表示打印九行),用內(nèi)層循環(huán)變量控制上三角到下三角的過(guò)渡。代碼如下:

        左對(duì)齊中間對(duì)稱(chēng)圖形:

        Private Sub Form_Click()

        Dim i%, j%

        For i = -4 To 4 '左對(duì)齊下三角與左對(duì)齊上三角組合

        For j = 1 To 5 - Abs(i)

        Print Tab(2 * j + 1); \"*\"; '每行定位左邊第一行

        Next j

        Next i

        End Sub

        右對(duì)齊中間對(duì)稱(chēng)圖形:

        Private Sub Form_Click()

        Dim i%, j%

        For i = -4 To 4 '右對(duì)齊下三角與右對(duì)齊上三角組合

        For j = 1 To 5 - Abs(i)

        Print Tab(2 * (Abs(i) + j)); \"*\"; '每行定位右對(duì)齊

        Next j

        Next i

        End Sub

        在上述代碼中,還利用了Tab(n)函數(shù)特有的定位特點(diǎn):當(dāng)所給定位參數(shù)n的值小于當(dāng)前行的打印位置值時(shí),要轉(zhuǎn)到下一行的第n列打印輸出對(duì)象。因此,雖然上述例題中的圖形要求分多行打印輸出,但是代碼中雙重循環(huán)的兩個(gè)循環(huán)結(jié)束語(yǔ)句之間并沒(méi)有添加空Print語(yǔ)句進(jìn)行轉(zhuǎn)行。

        綜合以上分析,Visual Basic程序設(shè)計(jì)中打印輸出任何一種圖形,應(yīng)先觀察圖形中每一行首字符位置的變化趨勢(shì),然后利用循環(huán)結(jié)構(gòu)與Tab(n)函數(shù)的結(jié)合,把Tab(n)函數(shù)置于循環(huán)之中,對(duì)圖形中的各字符進(jìn)行精準(zhǔn)定位,便能打印出準(zhǔn)確的圖形。

        參考文獻(xiàn):

        [1]吳鳳翔.Visual Basic 程序設(shè)計(jì)教程[M].北京:中國(guó)林業(yè)出版社,2002,11

        [2]龔沛增.Visual Basic 程序設(shè)計(jì)教程[M].北京:清華大學(xué)出版社,2004

        [3]譚浩強(qiáng).Visual BASIC程序設(shè)計(jì)[M].北京:清華大學(xué)出版社,2000

        [4]劉新民.Visual Basic 6.0程序設(shè)計(jì)[M].北京:清華大學(xué)出版社,2004

        [5]羅朝盛.Visual Basic 程序設(shè)計(jì)教程[M].北京:人民郵電出版社,2005

        [6]劉炳文,許蔓舒.Visual Basic 程序設(shè)計(jì)教程[M].北京:清華大學(xué)出版社,2000

        亚洲a∨无码一区二区| 一本色道久久亚洲综合| 国内最真实的xxxx人伦| 国内精品无码一区二区三区| 在线av野外国语对白| av免费在线播放一区二区| 黑人巨大精品欧美| 青青草原综合久久大伊人| 久久精品爱国产免费久久| 久久精品国产亚洲av沈先生| 亚洲av无码国产精品久久| 另类内射国产在线| 精品熟女少妇免费久久| 国产伦精品一区二区三区| 欧洲熟妇色xxxx欧美老妇软件| 麻豆亚洲av永久无码精品久久| 高清国产美女av一区二区| 国产精品髙潮呻吟久久av| 亚洲人成精品久久久久| 亚洲av无码一区二区乱子伦as| 久久aⅴ无码av高潮AV喷| 少妇又紧又爽丰满在线视频| 在线观看成人无码中文av天堂| 色偷偷88888欧美精品久久久 | 波多野结衣中文字幕久久| 91精品欧美综合在线观看| 日韩国产精品一区二区三区| 东京热无码av一区二区| 狠狠色狠狠色综合久久第一次| 成人影院免费观看在线播放视频 | 亚洲一线二线三线写真| 久久婷婷综合色拍亚洲| 一区二区三区在线观看视频精品| 成 人 免 费 黄 色| 国产成人+亚洲欧洲+综合| 国产三级自拍视频在线| 日韩精品一区二区在线天天狠天| 狠狠色噜噜狠狠狠888米奇视频| 亚洲乱码少妇中文字幕| 一区二区高清免费日本| 国产香蕉国产精品偷在线|