計算機程序設計強化復習_第1頁
已閱讀1頁,還剩97頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領

文檔簡介

1、計算機程序設計強化復習,Visual Basic 6.0,2,全文結(jié)構(gòu),VB語法知識基礎VB語法知識進階常用算法及編程技巧界面元素與程序調(diào)試模擬試題,3,第1章 程序代碼的組織方式,1.1 程序代碼的基本構(gòu)成字符集關(guān)鍵字標識符運算符表達式語句及語法規(guī)則語義Print aPrint a,Print a;,4,第1章 程序代碼的組織方式,1.2 VB中的過程用過程編程的兩大好處VB中過程的種類事件過程——系

2、統(tǒng)提供的過程通用過程——用戶自定義過程 1.3 VB中的模塊窗體模塊標準模塊類模塊,5,第2章 數(shù)據(jù)類型、常量與變量,2.1 基本數(shù)據(jù)類型數(shù)值型字符串型邏輯型日期型變體型數(shù)據(jù)類型轉(zhuǎn)換數(shù)值類型間的轉(zhuǎn)換數(shù)值類型與字符串類型的轉(zhuǎn)換數(shù)值類型與邏輯類型的轉(zhuǎn)換字符串類型與邏輯類型的轉(zhuǎn)換Print True+3‘顯示結(jié)果為2Print “123”+100‘顯示結(jié)果為223Print #5/1/

3、2000# + 3‘顯示結(jié)果是00-5-4,6,第2章 數(shù)據(jù)類型、常量與變量,2.2 構(gòu)造數(shù)據(jù)類型數(shù)組固定大小數(shù)組動態(tài)數(shù)組自定義類型2.3 常量與變量字面常量符號常量系統(tǒng)內(nèi)部常量——VbRed、VbCrLf等用戶自定義符號常量Const Pi As Single =3.14變量,7,第3章 運算符、表達式與公共函數(shù),3.1 VB中的運算符與表達式算術(shù)運算符與算術(shù)表達式字符串連接符關(guān)系運算符與關(guān)系表達式邏

4、輯運算符與邏輯表達式運算符的優(yōu)先級算術(shù)運算符 ^、-、*或/、\、Mod、+或-字符運算符 +或&關(guān)系運算符 =、>、>=、、Is、Like邏輯運算符 Not、And、Or、Xor、Eqv、Imp,8,第3章 運算符、表達式與公共函數(shù),3.2 VB中的公共函數(shù)數(shù)學函數(shù)字符串函數(shù)類型轉(zhuǎn)換函數(shù)隨機函數(shù)生成某個范圍內(nèi)的隨機整數(shù)Int((upperbound – lowerbound +1)*

5、Rnd + lowerbound)輸入與輸出函數(shù),9,第4章 數(shù) 組,4.1 數(shù)組的命名及說明數(shù)組的命名數(shù)組的說明4.2 數(shù)組結(jié)構(gòu)與數(shù)組元素數(shù)組的邏輯結(jié)構(gòu)與存儲結(jié)構(gòu)數(shù)組元素4.3 固定大小數(shù)組與動態(tài)數(shù)組固定大小數(shù)組動態(tài)數(shù)組4.4 Erase語句,10,第5章 順序結(jié)構(gòu),5.1 賦值語句賦值語句的格式=不同類型數(shù)據(jù)之間的賦值賦值號與等號的區(qū)別,11,第5章 順序結(jié)構(gòu),5.2 Print 方

6、法、Cls 方法方法調(diào)用語句的一般形式[.][參數(shù)列表]Print 方法[對象.]Print p1p2……例5-7:下列程序片斷的輸出結(jié)果是什么?a=3 : b=5Print “12345678901234567890”Print a;bPrint a,Print bPrint aPrint bCls 方法、Clear方法,12345678901234567890 3

7、 5 3 5 3 5,12,第6章 選擇結(jié)構(gòu),6.1 If…Then 結(jié)構(gòu)語句標準分支選擇結(jié)構(gòu)例6-1:寫出根據(jù)鍵盤輸入的百分制學生成績判斷該學生是否及格并輸出“Pass”或“Fault”。單分支結(jié)構(gòu)例6-2:寫出根據(jù)鍵盤輸入的百分制學生成績判斷該學生是否及格并將及格學生的成績輸出的程序片段。多分支結(jié)構(gòu)例6-3:寫出將鍵盤輸入的百分制學生成績轉(zhuǎn)換成五分制并輸出的程序片段。,13,第

8、6章 選擇結(jié)構(gòu),6.2 Select Case 結(jié)構(gòu)語句一般形式測試項的形式例6-4:在 Select Case X 結(jié)構(gòu)中,描述判斷條件3≤X≤7的測試項應該寫成 。A. Case 3 ≤ X≤7B. Case 3 ≤ X, X≤7C. Case Is≤7 , Is≥3D. Case 3 To 7,14,第7章 循環(huán)結(jié)構(gòu),7.1 Do…Loop 結(jié)構(gòu)語句Do-While循環(huán)結(jié)構(gòu)Do-Unti

9、l循環(huán)結(jié)構(gòu),“當”型循環(huán),“直到”型循環(huán),15,第7章 循環(huán)結(jié)構(gòu),7.2 For…Next 結(jié)構(gòu)語句一般形式For=ToStep……[Exit For]……NextFor循環(huán)與Do循環(huán)的比較循環(huán)嵌套,16,第8章 過程設計,8.1 Sub過程與Function過程的定義與調(diào)用Sub過程的定義[Private | Public] [Static] Sub 過程名 ([參數(shù)列表])[局部變量和常量

10、聲明]語句體[Exit Sub]……End SubSub事件過程的定義Sub通用過程的定義,17,第8章 過程設計,8.1 Sub過程與Function過程的定義與調(diào)用Function過程的定義[Private | Public] [Static] Function 函數(shù)名 ([參數(shù)列表]) [As 數(shù)據(jù)類型][局部變量和常量聲明]語句體[Exit Function]……[

11、函數(shù)名=表達式]End Function例8-5:以下有關(guān)過程的說法中錯誤的是 。A. 在Sub或Function過程中不能再定義其他Sub或Function過程B. 在調(diào)用過程時,與使用ByRef說明的形參對應的實參只能按地址傳遞方式結(jié)合。C. 遞歸過程既可以是遞歸Function過程,也可以是遞歸Sub過程。D. 在調(diào)用過程時,形參為數(shù)組的參數(shù)對應的實參只能是數(shù)組。,18,第8章 過程設計,8.

12、1 Sub過程與Function過程的定義與調(diào)用Function過程與Sub過程的區(qū)別例8-6:分別用Sub過程和Function過程編寫一個求n!的自定義過程。,Sub過程:Private Sub fact(n As Integer, f As Long)Dim i As Integerf = 1For i = 1 To n f = f * iNext iEnd Sub,Function過程:Private

13、 Function fact(n As Integer) As LongDim i As Integerfact = 1For i = 1 To n fact = fact * iNext iEnd Sub,19,第8章 過程設計,8.1 Sub過程與Function過程的定義與調(diào)用Sub過程與Function過程的調(diào)用Sub事件過程的調(diào)用Sub通用過程的調(diào)用 Call 語句調(diào)用:Call (實參

14、表) 將過程名作為語句調(diào)用:過程名 [實參表]Function過程的調(diào)用 變量=過程名(實參表),20,第8章 過程設計,8.1 Sub過程與Function過程的定義與調(diào)用過程的嵌套調(diào)用過程調(diào)用的注意事項把Sub過程名作為語句調(diào)用時,參數(shù)不需要加括號Function過程無參時,括號不可省,其調(diào)用方法與公共函數(shù)類似由于Function過程本身返回值,所以一般不使用Sub通過過程的調(diào)用方法,因為這兩種方法將放棄函數(shù)名的返

15、回值若對Function過程的調(diào)用出現(xiàn)在表達式中,則其運算優(yōu)先級最高,21,第8章 過程設計,8.2 過程調(diào)用時的參數(shù)參數(shù)傳遞的限制形參與實參的個數(shù)、類型和順序必須嚴格匹配,22,第8章 過程設計,8.2 過程調(diào)用時的參數(shù)按值傳遞ByVal數(shù)組、自定義記錄類型的變量、對象變量不能按值傳遞;常數(shù)和表達式必須按值傳遞按值傳遞的參數(shù),形參和實參的類型只需要相容即可按地址傳遞 ByRef,23,第8章 過程設計,8.3 遞歸過

16、程遞歸過程的定義在過程定義中調(diào)用自身或以其他方式間接調(diào)用自身的過程可以遞歸Sub過程,也可以遞歸Function過程遞歸過程的構(gòu)成條件有對本身的調(diào)用語句有一個結(jié)束遞歸過程的條件(終止條件或邊界條件)三題遞歸相關(guān)求 N!求 菲布拉及數(shù)列求 最大公約數(shù),24,第8章 過程設計,8.4 變量的作用域與生命期變量的作用域 在窗體模塊中,不能定義數(shù)組、定長字符串、用戶自定義類型等為全局變量。

17、,25,第8章 過程設計,8.4 變量的作用域與生命期變量的生命期8-22:若希望在離開某過程后,還能保存該過程中局部變量的值,則應使用關(guān)鍵字在該過程中定義局部變量。 A. DimB. PrivateC. PublicD. Static同名變量,26,第9章 文件操作,9.1 文件的基本概念文件的概念文件類型文件操作步驟9.2 基本文件操作控件驅(qū)動器列表框目錄列表框文件列表框,27,第9章 文

18、件操作,9.3 常用文件操作語句與文件操作函數(shù)Open語句Close語句與Reset語句Lock和Unlock語句Seek語句Print #和Write #語句Input#和Line Input # 語句Put # 和 Get #語句常用文件操作函數(shù),28,第10章 算法中使用的基本技巧,10.1.1 交換t=a : a=b : b=tt=b: b=a : a=tt=a : a=b : b=c : c=ta=a+

19、b : b=a-b : a=a-b10.1.2 累加、累乘n=n+1Sum=Sum+n P=P*n10.2 最大/小值問題 max=a(1)for i=2 to Ubound(a)if a(i)>max then max=a(i)next i,29,第10章 算法中使用的基本技巧,10.3.1 窮舉10-1:用100元買100只雞,公雞每只5元,母雞每只3元,小雞每1元3只,問可以買多少只公

20、雞、母雞和小雞?有多少種組合?Private Sub Command1_Click()Dim X As Integer, Y As Integer, Z As IntegerDim Count As IntegerCount = 0For X = 0 To Fix(100 / 5) For Y = 0 To Fix(100 / 3) For Z = 0 To 100 If X *

21、 5 + Y * 3 + Z / 3 = 100 And X + Y + Z = 100 Then Print X, Y, Z Count = Count + 1 End If Next NextNextPrint "組合個數(shù):"; CountEnd Sub,30,第10章 算法中使用的基本技巧,10

22、-2:求出所有的水仙花數(shù),如153=13+53+33Private Sub Command1_Click()Dim X As Integer, Y As Integer, Z As IntegerFor X = 1 To 9 For Y = 0 To 9 For Z = 0 To 9 If X ^ 3 + Y ^ 3 + Z ^ 3 = 100 * X + 10 * Y + Z Th

23、en Print 100 * X + 10 * Y + Z End If Next NextNextEnd Sub,31,第10章 算法中使用的基本技巧,10.3.2 迭代10-3:設方程為4*x2-3*x-7=0,給出不精確的初始根x0=2,利用公式:xn+1=xn-f(xn)/f’(xn) n=0,1,2…求出方程的近似根,直到 |xn+1-xn

24、|<0.00001。Dim X0 As Double, X1 As DoubleX0 = 2Do X1 = X0 - (4 * X0 ^ 2 - 3 * X0 - 7) / (8 * X0 - 3) If Abs(X1 - X0) < 0.00001 Then Exit Do X0 = X1LoopPrint X1,Dim X0 As Double, X1 As DoubleX1 = 2

25、Do X0 = X1 X1 = X0 - (4 * X0 ^ 2 - 3 * X0 - 7) / (8 * X0 - 3)Loop Until Abs(X1 - X0) < 0.00001Print X1,32,第10章 算法中使用的基本技巧,10.4.1 遞推10-4:已知一對成熟的兔子每月可以生一對小兔子。出生的小兔子兩個月后成熟,就可再生一對小兔子。問一對成熟的兔子在一年內(nèi)能繁殖成多少對兔子?10-

26、5:細胞分裂,每分裂一次要用3分鐘,30分鐘后有細胞2048個。問開始時有多少個細胞?Dim F(10) As Integer, i As IntegerF(10) = 2048For i = 9 To 0 Step -1 F(i) = F(i + 1) / 2Next iPrint F(0)10.4.2 遞歸,Private Sub Command1_Click()Print "開始時的細胞數(shù):&q

27、uot;; f(0)End SubFunction f(n As Integer) As IntegerIf n = 10 Then f = 2048Else f = f(n + 1) / 2End IfEnd Function,f=f(n-1)*2,33,第11章 數(shù)列、級數(shù)求和及矩陣運算問題,11.1 數(shù)列問題固定公式11-1:利用公式 k*k+k+17 生成一組兩位數(shù)的整數(shù)。遞推公式11-

28、2:利用初值 x1=15 以及公式 xi+1=(3*xi+153) mod 256產(chǎn)生一個10個數(shù)的數(shù)列。Dim x1 As Integer, x2 As IntegerDim count As Integerx1 = 15: Print x1For count = 2 To 10 x2 = (3 * x1 + 153) Mod 256 Print x2 x1 = x2Next count,Dim a(

29、1 To 10) As IntegerDim count As Integera(1) = 15: Print a(1)For count = 2 To 10 a(count) = (3 * a(count - 1) + 153) Mod 256 Print a(count)Next count,34,第11章 數(shù)列、級數(shù)求和及矩陣運算問題,11.2.1 級數(shù)求和確定通項確定求和結(jié)束條件11-3:求 c

30、os(x)=1-x2/2!+x4/4!-…+(-1)n+1x2(n-1)/[2(n-1)]!+… n=1,2,…… 直到級數(shù)的第n項的絕對值小于等于10-6為止。,,,Private Sub Command1_Click()Const x As Single = 3.14159 / 3Dim Sum As Single, N As Integer, T As SingleN = 1: T = 1Do Sum = Sum

31、+ T N = N + 1 T = -T T = T * x ^ 2 / (2 * (N - 1) * (2 * N - 3))Loop While Abs(T) >= 10 ^ -10Print SumEnd Sub,35,Private Sub Command1_Click()Const x As Single = 3.14159 / 3Dim Sum As Single, n As Inte

32、ger, T As Singlen = 1: T = 1Do Sum = Sum + T n = n + 1 T = (-1) ^ (n + 1) * x^ (2 * (n - 1)) /F(2 * (n - 1))Loop While Abs(T) >= 10 ^ -10Print SumEnd Sub

33、 q Function F(ByVal k As Integer) As DoubleDim i As IntegerF = 1For i = 2 To k F = F * iNext iEnd Function,cos(x)=1-x2/2!+x4/4!-…+(-1)n+1x2(n-1)/[2(n-1)]!+…,36,第11章 數(shù)列、級數(shù)求和及矩陣運算問題,11.2.2 連乘積11-4:

34、 到通項接近1時停止計算。,Private Sub Command1_Click()Dim Sum As Single, T As SingleSum = 2: T = Sqr(2)Do Sum = Sum * 2 / T T = Sqr(2 + T)Loop While Abs(2 / T - 1) >= 10 ^ -10Prin

35、t SumEnd Sub,37,第11章 數(shù)列、級數(shù)求和及矩陣運算問題,11.3.1 矩陣的生成和打印生成數(shù)組打印數(shù)組11.3.2 矩陣的行列交換11.3.3 矩陣的變換11-10:將一個4行4列矩陣進行轉(zhuǎn)置11-11:求出一給定矩陣的旋轉(zhuǎn)矩陣。,,,38,第11章 數(shù)列、級數(shù)求和及矩陣運算問題,11.3.4 尋找某些特殊點11-12:求6*5數(shù)組的鞍點,鞍點是指本行最大、本列最小的元素。11.3.5 特殊矩陣

36、按以下樣式輸出5行楊輝三角。 111 1 2 1 1 33 1 1 4 6 4 1,Private Sub Command1_Click()Dim A(5, 5) As Integer, I As Integer,

37、J As IntegerFor I = 1 To 5 A(I, 1) = 1 A(I, I) = 1Next IFor I = 3 To 5 For J = 2 To I - 1 A(I, J) = A(I - 1, J - 1) + A(I - 1, J) Next JNext IFor I = 1 To 5 Print Space(5 - I); For J

38、= 1 To I Print CStr(A(I, J)); " "; Next J PrintNext IEnd Sub,39,11.3.6 綜合例題,11-4:標記出5*5方陣中每一行最小元素的位置。如果某一行有多個數(shù)值相等的最小元素,也要同時標記出來。標記方式為每一行的最小元素為0,其他元素為1。,Option ExplicitOption Base 1Private A(

39、5, 5) As IntegerPrivate Sub Form_click()Text1 = ""Dim I As Integer, J As IntegerRandomizeFor I = 1 To 5 For J = 1 To 5 A(I, J) = Int((20 - 10 + 1) * Rnd + 10) Text1.Text = Text1 & A

40、(I, J) & " " Next J Text1 = Text1 & vbCrLfNext IEnd Sub,Private Sub Command1_Click()Dim I As Integer, J As Integer, Min As IntegerFor I = 1 To 5 Min = A(I, 1) For J = 2 To 5

41、If A(I, J) < Min Then Min = A(I, J) Next J For J = 1 To 5 If A(I, J) = Min Then Text2 = Text2 & "0 " Else Text2 = Text2 & "1 " End If

42、 Next J Text2 = Text2 & vbCrLfNext IEnd Sub,40,11.3.6 綜合例題,11-15:找出5*5數(shù)組中最大元素和最小元素所在行,如果不在同一行則交換這兩行。,Option ExplicitOption Base 1Private A(5, 5) As IntegerPrivate Sub Form_click()Dim I As Integer, J As

43、IntegerRandomizeFor I = 1 To 5 For J = 1 To 5 A(I, J) = Int((99 - 10 + 1) * Rnd + 10) Text1.Text = Text1 & A(I, J) & " " Next J Text1 = Text1 & vbCrLfNext IEnd Sub,Pr

44、ivate Sub Command1_Click()Dim I As Integer, J As Integer, T As IntegerDim Min As Integer, Max As IntegerDim LMin As Integer, LMax As IntegerMin = A(1, 1): Max = A(1, 1)For I = 1 To 5 For J = 1 To 5 If A(

45、I, J) Max Then Max = A(I, J) LMax = I End If End If Next JNext IIf LMin LMax Then For I = 1 To 5 T = A(LMin, I) A(LMin, I) = A(LMax, I)

46、 A(LMax, I) = T Next IEnd IfFor I = 1 To 5 For J = 1 To 5 Text2 = Text2 & A(I, J) & " " Next J Text2 = Text2 & vbCrLfNext IEnd Sub,41,第12章 數(shù)組的移動、排序及查找,12.1 移動12-1:將一個

47、10個元素的數(shù)組A循環(huán)向右移動一位。1 2 3 4 5 6 7 8 9 10→ 10 1 2 3 4 5 6 7 8 912-2:將一個10個元素的數(shù)組A循環(huán)向左移動一位。12-3:將一個10個元素的數(shù)組A循環(huán)向右移動三位。12-4:將一個4行4列數(shù)組的列循環(huán)右移一列。,42,第12章 數(shù)組的移動、排序及查找,1

48、2.2 排序12.2.1 選擇法排序 12.2.2 冒泡法排序12.2.3 插入法排序12.2.4 合并排序12.2.5 拉鋸式排序法每一輪先把最小的元素從前到后送到最后面的位置,然后從后到前把最大的元素送到最前面的位置。,43,第12章 數(shù)組的移動、排序及查找,12.3 查找12.3.1 順序查找 12.3.2 二分法查找,Option Base 1Private a(10) As IntegerPrivate S

49、ub Command1_Click()Dim N As Integer, Midd As Integer, Low As Integer, High As IntegerDim Flag As BooleanFor i = 1 To 10 a(i) = i * 10 + i Print a(i);Next iPrintFlag = FalseN = 120Low = 1: High = 10Do

50、 Midd = Int((Low + High) / 2) If a(Midd) = N Then Print CStr(N); " is in array "; CStr(Midd) Flag = True Exit Do Else If a(Midd) > N Then High = Midd - 1

51、 Else Low = Low + 1 End If End If Loop While Low <= HighIf Not Flag Then Print "Can't find the Number "; CStr(N); "!"End Sub,44,第13章 因數(shù)、最大公約數(shù)與素數(shù)等問題,13.1 整數(shù)的

52、因數(shù)計算問題窮舉法求整數(shù)的所有因子動態(tài)數(shù)組保存整數(shù)的所有因子整數(shù)的連乘積表達24=2×2×2×3,Private Sub Command1_Click()Dim i As Integer, N As IntegerN = InputBox("Please Input a number")i = 2Print CStr(N); "=";Do While

53、 i < N If N Mod i = 0 Then Print CStr(i); "*"; N = N \ i i = 2 Else i = i + 1 End IfLoopPrint CStr(N)End Sub,45,第13章 因數(shù)、最大公約數(shù)與素數(shù)等問題,13.2 最大公約數(shù)與最小公倍數(shù)問題最大公約數(shù)的求法

54、窮舉法歐幾里德法遞歸法最小公倍數(shù)的求法窮舉法利用最大公約數(shù)求最小公倍數(shù),46,窮舉法 求最大公約數(shù),Private Sub Command1_Click()Dim R As Integer, M As Integer, N As Integer, T As IntegerM = InputBox("Please Input number A")N = InputBox("Please Inp

55、ut number B")'確認M>NIf M < N Then T = M: M = N: N = TEnd IfFor R = 1 To N If M Mod R = 0 And N Mod R = 0 Then T = RNext RMsgBox ("最大公約數(shù)是:" & T)End Sub,47,歐幾里德法 求最大公約數(shù),Private S

56、ub Command1_Click()Dim R As Integer, M As Integer, N As Integer, T As IntegerM = InputBox("Please Input number A")N = InputBox("Please Input number B")'確認M>NIf M 0 M = N N = R

57、 R = M Mod NLoopMsgBox ("最大公約數(shù)是:" & N)End Sub,48,遞歸法 求最大公約數(shù),Private Sub Command1_Click()Dim R As Integer, M As Integer, N As Integer, T As IntegerM = InputBox("Please Input number A")N = Inp

58、utBox("Please Input number B")'確認M>NIf M < N Then T = M: M = N: N = TEnd IfMsgBox ("最大公約數(shù)是:" & GCD(M, N))End SubPrivate Function GCD(a As Integer, b As Integer) As IntegerIf a

59、 Mod b = 0 Then GCD = bElse GCD = GCD(b, a Mod b)End IfEnd Function,,49,第13章 因數(shù)、最大公約數(shù)與素數(shù)等問題,13.3 素數(shù)問題素數(shù)判斷的基本方法找出給定范圍內(nèi)的素數(shù)擴展無暇素數(shù):本身為素數(shù),且其逆序數(shù)也是素數(shù)(149)超級素數(shù):一個素數(shù)從低數(shù)到高位依次去掉一位數(shù)后仍然是素數(shù)(2939)孿生素數(shù):數(shù)值相差為2的兩個素數(shù)(29,31

60、)分解質(zhì)因數(shù),50,第14章 整數(shù)拆分、進制轉(zhuǎn)換,14.1 整數(shù)拆分轉(zhuǎn)換成字符型處理數(shù)值法處理整數(shù)拆分的應用求一個整數(shù)的各位數(shù)字之和水仙花數(shù)逆序數(shù),51,求一個整數(shù)的各位數(shù)字之和,Private Sub Command1_Click()Dim N As Integer, I As Integer, Sum As IntegerN = InputBox("Please input a number:"

61、)For I = 1 To Len(CStr(N)) Sum = Sum + Mid(CStr(N), I, 1)Next IPrint "Sum="; SumEnd Sub,52,逆序數(shù),Private Sub Command1_Click()Dim M As Integer, I As Integer, N As IntegerM = InputBox("Please input a

62、 number:")Print M; "的逆序數(shù)是:";Do While M >= 1 N = N * 10 + M Mod 10 M = M \ 10LoopPrint NEnd Sub,53,第14章 整數(shù)拆分、進制轉(zhuǎn)換,14.2 進制轉(zhuǎn)換14.2.1 十進制轉(zhuǎn)換為二進制14.2.2 十進制轉(zhuǎn)換為十六進制14.2.3 二進制轉(zhuǎn)換為十進制14.2.4 十六進制轉(zhuǎn)換為

63、十進制14.2.5 二進制轉(zhuǎn)換為八進制,54,十進制轉(zhuǎn)換為二進制,Private Sub Command1_Click()Dim M As Integer, I As Integer, N As StringM = InputBox("Please input a number:")Do While M >= 1 N = CStr(M Mod 2) & N M = M \ 2L

64、oopPrint NEnd Sub,55,第15章 字符運算及圓圈數(shù)問題,15.1 字符運算15.1.1 字符的替換例:將由大寫字母組成的某字符串中的字符進行轉(zhuǎn)換,轉(zhuǎn)換規(guī)則如下:A→C,B →D……X →Z,Y →A,Z →B15.1.2 字符串的替換 例:將字符串x中出現(xiàn)的子串s統(tǒng)統(tǒng)替換成子串 s1,如圖,56,第15章 字符運算及圓圈數(shù)問題,15.1 字符運算15.1.3 逆序、回文串例15-3:將一個字

65、符串逆轉(zhuǎn)。如“1234”轉(zhuǎn)為“4321”例15-4:判斷一個數(shù)是否為回文串15.1.4 統(tǒng)計例15-1:統(tǒng)計一段文本中英文字母出現(xiàn)的次數(shù)例15-2:統(tǒng)計一段文本中單詞的個數(shù),約定連續(xù)出現(xiàn)的英文字母為一個單詞。,Dim Char() As String, S As String, T As String, C As StringDim I As Integer, Flag As Boolean, Count As Inte

66、gerS = Text1: T = "": C = "": Count = 0For I = 1 To Len(S) C = Mid(S, I, 1) If C >= "a" And C = "A" And C <= "Z" Then T = T & C Flag =

67、 True Else If Flag Then Count = Count + 1 ReDim Preserve Char(Count) Char(Count) = T T = "" End If Flag = False End IfNextIf Fla

68、g Then Count = Count + 1 ReDim Preserve Char(Count) Char(Count) = TEnd If,57,第15章 字符運算及圓圈數(shù)問題,15.2 圓圈數(shù)問題15.2.1 報數(shù)問題例15-3:14人圍成一圈,從1開始報數(shù),凡報到3的出列,接著繼續(xù)從1開始報數(shù),直到全部出列為止,問依次出列的順序。,Dim A(1 To 14) As IntegerDim I

69、 As Integer, Count As Integer, Js As IntegerFor I = 1 To 14 A(I) = 1Next ICount = 0: Js = 0: I = 0Do Do While Count 3 I = IIf(I = 14, 1, I + 1) Count = Count + A(I) Loop Print I;

70、A(I) = 0: Js = Js + 1: Count = 0Loop While Js < 14,58,第15章 字符運算及圓圈數(shù)問題,15.2 圓圈數(shù)問題15.2.2 圓圈中的特殊點例15-4:將20個兩位正整數(shù)排成圓圈依次編號。找出其中的拐點元素(即指它比左右相鄰元素都大或都?。⑤敵龉拯c元素的值及位置。,Dim A(1 To 20) As IntegerDim I As Integer, Count As I

71、ntegerDim Left As Integer, Right As IntegerFor I = 1 To 20 A(I) = Int((99 - 10 + 1) * Rnd + 10) Print A(I);Next IPrintFor Count = 1 To 20 Left = IIf(Count = 1, 20, Count - 1) Right = IIf(Count = 20,

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論