亚洲免费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

        亚洲av高清一区二区三| 久久久久综合一本久道| 免费在线观看视频专区| 开心久久综合婷婷九月| 国产精品兄妹在线观看麻豆| 护士奶头又白又大又好摸视频| av无码电影一区二区三区| 久久精品免费视频亚洲| 欧美最猛黑人xxxx| 午夜福利电影| 丰满少妇棚拍无码视频| 丰满少妇被爽的高潮喷水呻吟| 国产电影无码午夜在线播放| 久久无码高潮喷水| 国产精品欧美成人片| 草逼视频免费观看网站| 樱桃视频影院在线播放| 国产免费久久精品国产传媒| 中文字幕一区,二区,三区| 一区二区视频中文字幕| 国产精品亚洲欧美大片在线看| 456亚洲老头视频| 亚洲一区二区三区资源| 8x国产精品视频| 全免费a级毛片| 亚洲AV无码中文AV日韩A| 成熟妇女毛茸茸性视频| 男女做爰猛烈啪啪吃奶动| 国产99re在线观看只有精品| 成年女人午夜特黄特色毛片免| 国产乱码人妻一区二区三区| 国产免费丝袜调教视频| 999久久久免费精品国产牛牛 | 天天爽天天爽夜夜爽毛片| 国产精品23p| 永久免费看黄在线观看| 艳妇臀荡乳欲伦交换h在线观看| 女同久久精品国产99国产精品| 亚洲一二三四五区中文字幕| 漂亮人妻被强了完整版| 日韩精品一区二区三区免费视频|