




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第四章程序設計基礎教學目的及要求:使學生掌握順序結構、分支結構、循環結構的語法規則和具體應用,程序調試的步驟和方法。重點與難點:1、熟練掌握表達式、賦值語句及邏輯表達式等的書寫約定2、掌握InputBox和MsgBox函數的用法3、掌握單分支和多分支條件語句4、熟練掌握For語句和While語句的使用5、難點是多重循環的程序設計主要外語詞匯:context、prompt、msgbox、inputbox授課內容:1、三種基本結構:順序結構、選擇結構、循環結構2、流程圖:(1)傳統的流程圖(2)N-S流程圖第一節順序結構程序設計特點:按書寫時的順序依次執行。一、VB中的語句及書寫約定:1、自動語法檢測2、格式化處理3、續行符:下劃線,一條語句寫在多行上。下劃線與其前面的字符之間至少要有一個空格。4、復合語句行:冒號,多條語句寫在一行上。二、賦值語句:1、可以給一個變量或某一個對象的屬性賦值。格式1:變量名=表達式格式2:[對象名.]屬性名=屬性值若省略對象名,則默認是當前窗體。方向性:從右向左賦值。2、最終的結果是最后一次的賦值。3、數據類型要匹配,注意相容現象:(1)邏輯型->數值型:True->-1,False->0數值型->邏輯型:非0->True,0->False(2)實型->整型:四舍五入原則,不是去尾原則整型->實型:擴展小數位數4、不管表達式是什么數據類型,都可以賦給一個Variant變量。5、系統提供的默認初始值:(1)數值型:0(2)貨幣型:0(3)字符型:空字符串(4)邏輯型:False(5)日期型:0:00:00(6)可變型:Empty(7)對象型:Nothing6、不能連續賦值:例:DimaAsInteger,bAsInteger,cAsIntegera=b=c=1錯誤a=1:b=1:c=1正確7、交換兩個變量中的數據:例:a=b:b=a錯誤t=a:a=b:b=t正確,t是中間變量注意:VB中的數字和只包含數字的字符串可以方便地互換類型,例:(1)隱式轉換:PrivateSubCommand1_Click()DimxAsInteger,yAsStringy=“100.23”:x=y‘隱式轉換PrintxEndSub(2)顯式轉換字符型->數值型:利用Val函數:PrivateSubCommand1_Click()DimxAsIntegerText1.Text=“100.23”x=Val(Text1.Text)‘顯式轉換PrintxEndSub(3)顯式轉換數值型->字符型:利用Str函數:PrivateSubCommand1_Click()DimxAsIntegerx=100.23Text1.Text=Str(x)‘顯式轉換PrintText1.TextEndSub三、注釋、暫停、結束語句:1、注釋語句:非執行語句(1)格式1:Rem注釋語句(2)格式2:‘注釋語句(常用)(3)塊注釋:視圖->工具欄->編輯->設置注釋塊、解除注釋塊2、暫停語句:格式:Stop暫停程序的運行,但不關閉所有已打開的文件,相當于在程序代碼中設置斷點,主要用于調試程序。3、結束語句:格式:End停止程序的運行,關閉所有已打開的文件。還可以用來結束一些模塊的操作。例:PrivateSubCommand2_Click()EndEndSub四、輸入函數InputBox:在一對話框中顯示提示,等待用戶輸入內容,并返回包含文本框內容的字符串。1、格式:InputBox(prompt[,title][,default][,xpos,ypos][,helpfile,context])(1)prompt:對話框的消息提示文字。(2)title:對話框的標題,標題省略取默認值“工程1”。(3)default:文本框的默認輸入信息。2、InputBox函數的返回值是字符型的。3、每運行一次InputBox函數只能給一個變量賦值??偨Y:輸入數據的方法:1、在程序代碼中直接指定:優點:代碼簡單缺點:缺少靈活性2、利用TextBox文本框輸入數據:優點:可以輸入任意值缺點:要添加多個文本框,界面復雜3、利用InputBox函數輸入數據:優點:界面簡單,可以輸入任意值缺點:代碼復雜,參數較多五、消息函數和語句MsgBox:在一對話框中顯示消息,等待用戶單擊按鈕,并返回包含文本框內容的字符串。1、MsgBox函數:(1)格式:MsgBox(prompt[,buttons][,title][,helpfile,context])①prompt:對話框的消息提示文字。②buttons:a)組合值,每組只能取一個數字,數字間用“+”連接。b)進行相加(只有唯一的分解方式)。c)使用VB常數。(表4-1)d)方式a)和方式c)可以結合起來使用。e)把“+”換成“Or”例:3+32+035vbYesNoCancel+vbQuestion+vbDefaultButton1vbYesNoCancel+32+vbDefaultButton1③title:對話框的標題,標題省略取默認值“工程1”。(2)MsgBox函數的返回值是整型的:1-7(表4-2)例:PrivateSubForm_Load()DimaAsIntegerShowa=MsgBox("請你選擇:",3+32+0,"Buttons參數組合舉例")Ifa=6ThenUnloadForm1Form2.ShowEndIfIfa=7ThenUnloadForm1Form3.ShowEndIfIfa=2ThenEndEndIfEndSub2、MsgBox語句:僅僅用于顯示一些簡單的信息而不需要返回值。格式:MsgBoxprompt[,buttons][,title][,helpfile,context]參數含義:同上不用寫小括號,沒有返回值,可以單獨作為一個語句來使用。六、數據輸出:Print方法的缺省輸出:從窗體的第1行第1列開始輸出。1、Tab函數:格式:Tab(n),參數n是絕對列數值。(1)Tab函數與表達式之間用分號分隔。(2)如果當前行的打印位置大于n,則Tab將打印位置移動到下一行的第n列上。(3)如果n小于1,則Tab將打印位置移動到該行的第1列。(4)如果n大于輸出行的寬度,則Tab函數用以下公式計算下一個打印位置:nMod行寬。2、Spc函數:格式:Spc(n),參數n是相對列數值。(1)Spc函數與表達式之間用分號分隔。(2)如果n小于輸出行的寬度,則下一個打印位置將緊接在數個已打印的空白之后。(3)如果n大于輸出行的寬度,則Spc函數用以下公式計算下一個打印位置:當前打印位置+(nMod行寬)。3、Space函數:格式:Space(n),輸出n個空格注:Spc函數與Space函數作用相同,但Space函數可以使用字符串運算符&和+。總結:輸出行的控制:Print后面不跟表達式,只輸出一行空行。輸出列的控制:用Tab、Spc或Space函數調整。七、輸出到打印機:1、直接輸出:格式:Printer.Print[表達式]只能打印文本信息,不能打印圖形圖像信息。(1)Page屬性:用來設置頁碼,默認缺省值為1。(2)NewPage方法:強制打印機跳到下一頁打印。(3)EndDoc方法:用來結束文件的打印。2、窗體輸出:格式:[窗體.]PrintForm既將信息輸出到窗體,又將信息輸出到打印機。預覽作用(1)[窗體.]AutoRedraw=True(2)可以打印窗體上的文本、任何可見的控件及圖形信息。附:方法與函數的區別:(1)方法可以單獨作為語句使用,函數不可以。(2)方法沒有返回值,函數有返回值。(3)方法的格式:[對象.]方法[參數列表]函數的調用格式:函數名([參數列表])(4)方法是隸屬于某一個對象的,函數存在于VB自帶的函數庫。第二節選擇結構程序設計特點:根據指定的條件進行判斷,根據判斷的結果在兩條分支或多條分支路徑中選取其中的一條執行。一、行If語句:單行形式,雙分支結構格式1:If條件Then語句組1格式2:If條件Then語句組1Else語句組2語句組中的多個語句之間用冒號分隔。二、塊If語句:多行形式,雙分支結構格式3:If條件Then格式4:If條件Then語句組1語句組1EndIfElse語句組2EndIf1、Else必須單獨一行。2、If…EndIf必須成對出現。行If語句中不需要EndIf。3、最好采用縮進形式。4、如果語句組1、語句組2中含有多條語句時,最好使用塊If語句。三、If語句的嵌套:多分支結構四、ElseIf語句:多分支結構格式:If條件1Then語句組1ElseIf條件2Then語句組2……ElseIf條件nThen語句組nElse語句組n+1EndIf1、VB首先測試條件1,如果它為False,VB就測試條件2,依次類推,直到找到一個為True的條件。此時,VB就會執行相應的語句組,然后執行EndIf后面的語句。2、不能交叉嵌套,只能完全嵌套。3、可以使用任意數量的ElseIf語句。4、只有一個EndIf與If相對應。例題4-5:方法一:Ifcj>=0Andcj<60ThenPrint"不及格"ElseIfcj>=60Andcj<75ThenPrint"及格"ElseIfcj>=75Andcj<90ThenPrint"良好"ElseIfcj>=90Andcj<=100ThenPrint"優秀"EndIfEndIfEndIfEndIf方法二:Ifcj>=90Andcj<=100ThenPrint"優秀"ElseIfcj>=75ThenPrint"良好"ElseIfcj>=60ThenPrint"及格"ElsePrint"不及格"EndIfEndIfEndIf方法三:Ifcj>=90Andcj<=100ThenPrint"優秀"ElseIfcj>=75ThenPrint"良好"ElseIfcj>=60ThenPrint"及格"ElsePrint"不及格"EndIf方法四:SelectCasecjCase90To100Print“優秀”Case75To89Print“良好”Case60To74Print“及格”CaseElsePrint“不及格”EndSelect五、多條件選擇語句SelectCase:多分支結構格式:SelectCase測試表達式Case表達式1語句組1Case表達式2語句組2……Case表達式n語句組n[CaseElse語句組n+1]EndSelect改進:SelectCase測試表達式‘復合語句Case表達式1:語句組1Case表達式2:語句組2……Case表達式n:語句組n[CaseElse:語句組n+1]EndSelect1、測試表達式只能是數值型或字符型。2、測試表達式只計算一次,然后VB將表達式的值與結構中的每個Case的值進行比較,如果相等,就執行與該Case相關聯的語句組。3、如果不止一個Case與測試表達式相匹配,則只對第一個匹配的Case執行與之相關聯的語句組。4、表達式n的可能形式:(1)表達式1[,表達式2][,表達式3]……無大小順序。(2)表達式1To表達式2包括表達式1和表達式2在內。(3)Is<關系運算符><表達式>只能是簡單的條件,不能用邏輯運算符將兩個或多個條件組合在一起。以上三種形式可以混合使用。六、條件判斷函數IIf:雙分支結構格式:IIf(條件,表達式1,表達式2)1、當條件為真時,函數返回值是表達式1的值;當條件為假時,函數返回值是表達式2的值。例:PrintIIf(cj>=60,“通過”,“不通過”)2、IIf函數可以嵌套使用。例:PrintIIf(a<0,-1,IIf(a=0,0,1))總結:1、行If語句:雙分支結構2、塊If語句:雙分支結構3、If語句的嵌套:多分支結構4、ElseIf語句:多分支結構5、多條件選擇語句SelectCase:多分支結構6、條件判斷函數IIf:雙分支結構第三節循環結構程序設計1、特點:根據給定條件是否滿足決定是否繼續執行循環體中的操作。注:避免出現“死循環”。當程序運行了“死循環”的結構,必須按Ctrl+Break中斷。2、三種循環結構:(1)For…Next(2)While…Wend(3)Do…Loop3、循環方式:(1)計數法(2)標志法一、For循環結構:格式:For循環變量=初值To終值[Step步長]循環體Next[循環變量]1、缺省步長時,默認是1。步長可以為正值或為負值。2、先判斷條件,后執行循環體。注:若循環體執行n次,則條件將被判斷n+1次。3、ExitFor語句的作用:提前退出循環體,結束循環結構。4、空循環的作用:延時。5、For循環一般用在已知循環次數的情況。6、多重循環:不能交叉嵌套,只能完全嵌套。各層次的循環變量名不能相同。7、多重循環可以共用一個Next語句,但此時循環變量名不能省略,并且先內循環變量,后外循環變量。例:Fori=1To10Forj=1To15Fork=1To20循環體NextkNextjNexti二、當型循環While…Wend結構:格式:While條件循環體Wend1、先判斷條件,后執行循環體。注:若循環體執行n次,則條件將被判斷n+1次。2、循環體內一定要有改變條件的語句,否則就會導致“死循環”。3、多重循環:不能交叉嵌套,只能完全嵌套。例題4-11:求兩個數的最大公約數。(1)該程序算法:(2)PrivateSubText1_KeyPress(KeyAsciiAsInteger)IfKeyAscii=13ThenText2.SetFocusEndSub注:CommandButton的Default屬性默認是False,該屬性設置為True時,說明該按鈕是缺省按鈕,按回車鍵就相當于單擊了該按鈕。兩者不能相互沖突。三、Do…Loop循環結構:先判斷后執行先執行后判斷當型循環DoWhile條件循環體Loop與While…Wend結構相同Do循環體LoopWhile條件直到型循環DoUntill條件循環體LoopDo循環體LoopUntill條件1、既可以是當型循環,也可以是直到型循環。2、While與Untill后面的“條件”總是相反的。3、既可以先判斷后執行:若循環體執行n次,則條件將被判斷n+1次。也可以先執行后判斷:若循環體執行n次,則條件將被判斷n次。4、ExitDo語句的作用:提前退出循環體,結束循環結構。總結:提前退出循環體的方法:(1)For…Next:用ExitFor語句(2)While…Wend(3)Do…Loop:用ExitDo語句Page79:i=1DoWhilei<=99s=s+iIfs>2000ThenExitDoEndIfi=i+2Loop例題4-10:方法一:用For循環結構Fori=1To9Forj=1ToiPrintTab(j*8);j&"×"&i&"="&j*i;NextjPrintNexti方法二:用While…Wend循環結構i=1Whilei<=9j=1Whilej<=iPrintTab(j*8);j&"×"&i&"="&j*i;j=j+1WendPrinti=i+1Wend方法三:用Do…Loop循環結構i=1DoWhilei<=9j=1DoWhilej<=iPrintTab(j*8);j&"×"&i&"="&j*i;j=j+1LoopPrinti=i+1Loop例題4-5:DimcjAsIntegercj=InputBox(“請輸入學生的成績:0~100分:”)DoWhileTrueIfcj>=0Andcj<=100ThenExitDoElseMsgBox“必須輸入0~100分之間的整數!”cj=InputBox(“請輸入學生的成績:0~100分:”)EndIfLoop例題4-13:方法一:用While…Wend循環結構f=0i=2Whilei<=n-1Andf=0IfnModi=0Thenf=1Elsei=i+1EndIfWend方法二:用For循環結構f=0Fori=2Ton-1IfnModi=0Thenf=1ExitForEndIfNexti方法三:用Do…Loop循環結構f=0i=2DoWhilei<=n-1IfnModi=0Thenf=1ExitDoEndIfi=i+1Loop總結:1、For循環結構:計數法。2、While循環結構:計數法、標志法,可以實現多條件判斷。3、Do…Loop循環結構:計數法、標志法,可以實現多條件判斷。第四節其他輔助語句一、Goto語句:功能:無條件地轉向執行語句標號或行號的語句。1、格式1:Goto語句標號語句標號后面必須加一個冒號。2、格式2:Goto行號行號后面不能加冒號。二、On-Goto語句:缺點:BS現象輔助教學情況:多媒體課件、VisualBasic6.0復習思考題、作業題思考當窗體的名稱改為form1時,該窗體的對象名是什么。教材習題一1、2、3、4、5參考教材或資料:《VisualBasic程序設計教程》,劉炳文許蔓舒編著,清華大學出版時間一鍋米飯,放到第二天,水氣就會干一些;放到第三天,味道恐怕就有問題;第四天,我們幾乎可以發現,它已經發餿;再放下去,恐怕就要發霉了。是什么原因,使那鍋米飯變餿變壞——是時間??墒?,在煙雨的江南,年輕的父母生下女兒,他們就在地窖里,埋下一缸缸米酒,十七、八年以后,女兒長大了,這些酒就成為嫁女兒、婚禮上的佳釀。它有一個美麗而惹人遐思的名字,叫女兒紅。是什么使那些平凡的米,變成芬芳甘醇的酒——也是時間。到底,時間是善良的,還是邪惡的魔術師呢?或許都不是,時間只是一個簡單的指數符號,它會把原來倍增而已。開始變壞的米飯,每一天都不斷變得更腐臭,而開始變醇的美酒,每一分鐘,都在繼續增加它的芬芳。在人世間,我們也曾經看過天真的少年一旦開始墮落,便不免愈陷愈深,終于變得滿面風塵,面目可憎。但相反的,時間卻把溫和的笑痕,體諒的眼神,成熟的風采,智慧的神韻添加在那些追尋善良的人身上。同樣是煮熟的米,餿飯與美酒的差別在哪里呢?就在那一點點的酒曲。皆出父母,誰墮落如禽獸,而誰又能提升成完美的人呢?是內心深處,緊緊環抱不放的,捉摸不透的欲望。與其問,時間將怎樣對待你我。不如問,你我將如何對待時間。你就是一道風景生于世界上,存于宇宙間,你不比別人多,也不比別人少,同頂炎炎烈日,共沐皎皎月輝,心智不缺,心力不乏,只要你勇于展示自己的才華、個性及風采,那么,你就沒必要去仰視別人。你,就是一道風景!不要隱于云海峰巒之后,不必藏于青竹綠林之中,你就是巍巍山巒的一石,就是蒼蒼林莽中的一株。所以你沒必要敬畏名山大川,沒必要去贊嘆大漠孤煙,你的存在,其立身就在解釋世上所有的景致;你的存在,正注釋著時代的一種風情!不必去擁擠了,你就站在屬于自己的位置上,不斷地展示你內心世界的豐富內涵,給蒼白的四周以綺麗,給庸俗的日子以詩意,給沉悶的空氣以清新,每日拭亮一個太陽,用大自然的琴弦,奏響自己喜愛的心曲。自然美具有不以人們意志為轉移的自然性,梅花自有梅花的風韻,紅杏自有紅杏的麗姿,如今認清自己往往比注視別人更為重要。沒必要一味褒揚別人貶低自己,應該果敢地站起,與最佳景觀比肩,只要你不懈追求,相信你,不比別人差。真的,你行!翠竹之秀麗,青松之壯美,楊柳之瀟灑,蘭草之溫柔,自然賦予各異風情,都在各自的一片土地上展示生命的光輝。如今所需的不是自謙,而是自信。很久很久了,虛假的謙遜毀掉個性的展露,模仿、裝扮、整容,使人無法認清你的真面目,不知哪個是你自己,那情景似古代磚窯燒出的規格相同的陶俑。風景這邊獨好!妙在獨好。我們太忽視這個“獨”了。世上被人們公認的景點都是獨特的:埃及金字塔,中國古長城;法國凱旋門,羅馬斗獸場……世上被人贊譽的美景也別具風采:泰山日出,威尼斯水緘,熱帶雨林,撒哈拉大沙漠……大凡能被我們記住的人多富有個性特征:阿Q的“快樂”,魯濱遜的堅毅,王熙風的笑里藏刀,奧賽羅嫉妒殺人……讓個性伴你,站著該是一座山,倒下便是路基;完整時給人啟示,粉碎時使人警醒……你不比別人多,也不比別人少,你不用注視人們的眸光便可知道,你在陽光下用身影發表宣言:你就是一道風景!大氣戈壁上的胡楊活著三百年不死,死了三百年不倒,倒了三百年不朽。飛沙走石中守住了生命的鮮活,孤苦凄然中昂起了信念的不屈。胡楊的勃然生機挺拔出了撼人的大氣。秋風中的竹子雖消瘦但不折腰,雖孤獨但不動搖,雖憂思但不哀鳴,任憑寒夜苦雨蕭瑟,依然傲骨拔節凌空。竹子的沖天豪情正直出了高亢的大氣。池塘里的蓮花身陷污泥而不染,一身清白不自憐,縱使面對丑惡也不悲戚,昂首獨立更為清高。蓮花丹青難寫之精神頂立起風骨的大氣。大氣,便是沖破貧瘠和困苦之折磨即使有萬千磨難也要心揣夢想播撒愛意的生氣。嫩嫩的企盼不滅,目光便總是向前,重重的責任肩負,生長豐厚了癡迷的期待。大氣,便是卑微不失凌云之志,平凡猶有不可欺之尊的骨氣,用自己找尋使自己的足跡不欲,跌倒爬起照
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 關+于媒介體育畸變困境下的媒體自律
- 公司安裝日常管理制度
- 公司等級劃分管理制度
- 公司網銀付款管理制度
- 公司輿情監測管理制度
- 公司資本運作管理制度
- 風管工人安全交底-浪潮-2022.7
- 二次配管開槽及管線敷設安全技術交底
- 2025股權投資合同范本 適用于企業投資協議
- 廣西壯族自治區百色市2023?2024學年高一下冊7月期末教學質量調研測試數學試卷附解析
- 2025年高考真題-化學(黑吉遼卷) 含答案(黑龍江、吉林、遼寧、內蒙古)
- 2025年新高考1卷(新課標Ⅰ卷)英語試卷
- 婦科腔鏡試題及答案
- 語文 《“蛟龍”探?!氛n件-2024-2025學年統編版語文七年級下冊
- 2025年智慧園區管理知識考試卷及答案
- 2025年企業管理者能力測評試卷及答案
- 車輛維修包干協議書
- 記賬實操-天然氣公司的全盤會計賬務處理實例
- 中學生英語詞匯表3500(全)
- 2025年檔案法制知識競賽題庫(含答案)
- 2025年福建省中考生物沖刺卷模擬檢測卷(含答案)
評論
0/150
提交評論