【文章內(nèi)容簡介】
2 2 0 05. Private Sub Command1_Click()Dim x%, y%x = InputBox(請輸入x的值:)Select Case xCase 1, 3, 5y = x 1Case 6 To 10y = x + 1Case 2, 4y = 2 * xCase Is 10y = x * x + 1End SelectPrint x=。 x, y=。 yEnd Sub (x 、4和15)答案: x=2 y=4x=8 y=9x=4 y=8x=15 y=2266. Private Sub Command1_Click()Dim i%, t!t = 1: i = 1While i 10t = t * ii = i + 2WendPrint t=。 tEnd Sub答案:t=9457. Private Sub Command1_Click()Dim i%, x%, y%x = 1: y = 1:i = 1Do Until i 8If i Mod 2 = 1 Thenx = x * iElsey = y * iEnd Ifi = i + 1LoopPrint x=。 x, y=。 yEnd Sub答案:x=105 y=3848. Private Sub Command1_Click()Dim p%, s%p = 1: s = 1Do p=p+2:s=s+pLoop While p10Print s=。 sEnd Sub答案:s=369. Private Sub Command1_Click()Dim m%, n%For m=1 to 3 n=0 While n=m1 Print m,n n=n+1 WendNext mEnd Sub答案: 1 0 2 0 2 13 03 13 23.4 編程題1. 輸入一個學(xué)生成績,若成績在85分以上,則輸出“very good”;若成績在60分到80分之間,則輸出“good”;若成績低于60分,則輸出“no good”。解答:(1) 界面設(shè)計和屬性設(shè)置在窗體上建立兩個標(biāo)簽、兩個文本框和兩個命令按鈕。窗體和窗體上控件的主要屬性設(shè)置如表331所示。表331 第1題的屬性設(shè)置 控件名稱 屬性名 屬性值 Form1 Caption根據(jù)分?jǐn)?shù)給定評語 Label1 Caption 分?jǐn)?shù) Label2Caption 評語 Text1 Text 空串 Text2 Text 空串 Command1Caption 開始 Command2 Caption 結(jié)束(2) 程序代碼Private Sub Command1_Click() Dim score! score = Val() If score = 85 Then = Very good! ElseIf score = 60 Then = Good! Else = No good! End IfEnd SubPrivate Sub Command2_Click() EndEnd Sub(3) 運(yùn)行情況運(yùn)行程序后,屏幕出現(xiàn)用戶界面。把鼠標(biāo)移到Text1文本框并單擊,輸入分?jǐn)?shù)。然后,單擊“開始”命令按鈕,系統(tǒng)執(zhí)行Command1_Click事件過程。單擊標(biāo)題為“結(jié)束”的命令按鈕,執(zhí)行Command2_Click事件過程,結(jié)束程序的執(zhí)行。 第1題的執(zhí)行結(jié)果2. 求一元二次方程ax+bx+c=0的根。解答:(1) 界面設(shè)計和屬性設(shè)置在窗體上建立兩個命令按鈕。窗體和命令按鈕的主要屬性設(shè)置如表332所示。表332 第2題的屬性設(shè)置 控件名稱 屬性名 屬性值 Form1 Caption求一元二次方程的根 Command1Caption 開始 Command2 Caption 結(jié)束(2) 程序代碼由中學(xué)數(shù)學(xué)知識知道,求一元二次方程的根的公式為:,編程時要考慮如下各種情況:① 當(dāng)a=0 時,方程不是二次方程;② 當(dāng) b24ac=0 時,有兩個相同的實根: ;③ 當(dāng) b24ac0 時,有兩個不同的實根: ;④ 當(dāng) b24ac0 時,有兩個共軛復(fù)根: 。Private Sub Command1_Click() Cls Dim a!, b!, c!, disc!, x1!, x2!, realpart!, imagpart! a = InputBox(請輸入方程的系數(shù)a:) b = InputBox(請輸入方程的系數(shù)b:) c = InputBox(請輸入方程的系數(shù)c:) Print: Print Print Tab(10)。 輸入方程的系數(shù)為:。 a=。 a。 b=。 b。 c=。 c Print If Abs(a) = Then Print Tab(15)。 方程不是一個二次方程! Else disc = b ^ 2 4 * a * c If Abs(disc) = Then Print Tab(10)。 方程有兩個相同的實根:。 x1=x2=。 b / (2 * a) ElseIf disc Then x1 = (b + Sqr(disc)) / (2 * a) x2 = (b Sqr(disc)) / (2 * a) Print Tab(5)。 方程有兩個實根: Print Tab(18)。 x1=。 x1 Print Tab(18)。 x2=。 x2 ElseIf disc Then realpart = b / (2 * a): imagpart = Sqr(disc) / (2 * a) Print Tab(5)。 方程有兩個虛根:。 Print Tab(18)。 x1=。 realpart。 +。 imagpart。 i Print Tab(18)。 x2=。 realpart。 。 imagpart。 i End If End IfEnd SubPrivate Sub Command2_Click() EndEnd Sub注意,程序中的條件“fabs(a)=”和“fabs(disc)=”分別用來判斷a和disc的值是否為0。因為實數(shù)在計算機(jī)計算和存儲時會有微小的誤差,若用“a=0”和“disc=0”來判斷a和disc是否為0,則會由于誤差導(dǎo)致條件不成立,無法得到正確的運(yùn)行結(jié)果。(3)運(yùn)行情況運(yùn)行程序后,單擊“開始”命令按鈕,執(zhí)行Command1_Click事件過程。執(zhí)行時,在InputBox框中輸入 a、b和c三個系數(shù)?!?。 執(zhí)行結(jié)果(a) 執(zhí)行結(jié)果(b) 執(zhí)行結(jié)果(c) 執(zhí)行結(jié)果(d)3. 給定函數(shù)y = ,從鍵盤上輸入x的值,求y的值。(要求使用Case語句)解答:(1) 界面設(shè)計和屬性設(shè)置在窗體上建立兩個命令按鈕。窗體和命令按鈕的主要屬性設(shè)置如表333所示。表333 第3題的屬性設(shè)置 控件名稱 屬性名 屬性值 Form1 Caption求給定分段函數(shù)的值 Command1Caption 開始 Command2 Caption 結(jié)束(2) 程序代碼Private Sub Command1_Click() Cls Dim x!, y! x = InputBox(請輸入x的值:) If x = 1 And x = 5 Then Select Case x Case Is 2 y = 3 * x 5 Case Is 4 y = 2 * Cos(x) + 1 Case Is = 5 y = Sqr(1 + x * x) End Select Else y = x * x 4 * x + 5 End If Print Tab(10)。 x=。 x, y=。 yEnd SubPrivate Sub Command2_Click() EndEnd Sub(3) 運(yùn)行情況運(yùn)行程序后,單擊“開始”命令按鈕,執(zhí)行事件過程Command1_Click。執(zhí)行時,按InputBox對話框提示,輸入x的值。計算結(jié)果在窗體上顯示。4. 輸入圓的半徑R和運(yùn)算標(biāo)志,按照運(yùn)算標(biāo)志進(jìn)行指定運(yùn)算。給定的運(yùn)算標(biāo)志及其表示的運(yùn)算如下:C(Circle) 表示計算周長A(Area) 表示計算面積B(Both) 表示周長和面積都計算(要求使用Case語句)解答:(1)界面設(shè)計和屬性設(shè)置在窗體上放置兩個命令按鈕。窗體和命令按鈕的主要屬性設(shè)置如表334所示。表334 第4題的屬性設(shè)置 控件名稱 屬性名 屬性值 Form1 Caption計算圓周長或圓面積或兩者都計算 Command1Caption 開始 Command2 Caption 結(jié)束(2)程序代碼Private Sub Command1_Click() Cls Dim r!, f As String * 1 Const pi! = r = InputBox(請輸入圓的半徑 r :) If r = 0 Then f = UCase(InputBox(輸入運(yùn)算標(biāo)志: + Chr(13) amp。 _ C___(計算周長) + Chr(13) amp。 _ A___(計算面積) + Chr(13) amp。 _ B___(兩者都計算))) 39。提示信息分多行顯示 Select Case f Case C Print Tab(10)。 半徑r=。 r。 圓周長=。 r * 2 * pi Case A Print Tab(10)。 半徑r=。 r。 圓面積=。 r ^ 2 * pi Case B Print Tab(10)。 半徑r=。 r。 圓周長=。 r * 2 * pi Print Tab(10)。 半徑r=。 r。 圓面積=。 r ^ 2 * pi Case Else Print Tab(18)。 輸入的運(yùn)算標(biāo)志錯! End Select Else Print Tab(18)。 半徑不能是負(fù)數(shù)! End IfEnd SubPrivate Sub Command2_Click() EndEnd Sub(3)運(yùn)行情況運(yùn)行程序后,單擊標(biāo)題為“開始”的命令按鈕,執(zhí)行Command1_Click事件過程。按InputBox對話框的提示輸入半徑r和運(yùn)算標(biāo)志。計算結(jié)果在窗體上顯示。5. 求滿足12+22+…+n21000的最小n值。(要求使用While…WEnd語句)解答:(1)界面設(shè)計和屬性設(shè)置在窗體上建立兩個命令按鈕。窗體和命令按鈕的主要屬性設(shè)置如表335所示。表335 第5題的屬性設(shè)置 控件名稱 屬性名 屬性值 Form1 Caption求滿足1^2+2^2+…+n^21000的最小n值 Command1Caption 開始 Command2 Caption 結(jié)束(2)程序代碼Private Sub Command1_C