编程题题目及答案_第1页
编程题题目及答案_第2页
编程题题目及答案_第3页
编程题题目及答案_第4页
编程题题目及答案_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、编程题目及答案第二章1在窗体上添加3 个命令按钮(“显示”、“清除”与“结束”)。单击“显示”按钮时,将在窗体上显示唐诗“静夜思”,如图2-1 所示,单击“清除”按钮时,将清除所显示的内容,单击“结束”按钮时,结束程序的运行。2在窗体上添加5 个标签、4 个文本框和2 个命令按钮。程序运行时,通过文本框输入一个总秒数,单击“计算”按钮,总秒数将传换成小时、分钟和秒数并在文本框中输出(运行界面如图2-2 所示)图2-1图2-23在窗体上添加3 个标签,3 个文本框和2 个命令按钮。程序运行时,在第1 个文本框中输入文字时,在另外两个文本框中显示相同的内容,但显示的字号和字体不同。单击“清除”按钮

2、则可清除3 个文本框中的内容(运行界面如图2-3 所示)。4设计计算语文、数学、英语这三门课程总成绩和平均分的程序,利用文本框做数据的输入和输出(运行界面如图2-4)所示。图2-3 图2-45单击窗体,弹出一个输入框,用户输入一个两位数(如36),交换个位数和十位数的位置,并把处理后的数(63)用消息框显示给用户。6在窗体上添加2 个文本框(它们的初始值均为0)、4 个命令按钮(标题分别为“+”“-”“*”“/”)和1 个标签(初始标题为空)。要求在2 个文本框内输入2 个数字,单击“+”(或“-”、“*”、“/”)按钮时,标签将显示两数相加(或减、乘、除)的结果。7某门课程的考试成绩分为笔试

3、和机试成绩,其中笔试占60,机试占40,利用输入框分别输入该课程的笔试和机试成绩,用消息框输出其总成绩。8设计一个电子计时器,以秒为单位计时,单击“计时开始”按钮计时开始。此时“计时开始”按钮变灰,“停止计时”按钮可用,在标签内显示经过的秒数。单击“停止计时”按钮,计时结束, 弹出消息框提示“您的记录是?秒”(这里的?代表标签最后显示的秒数值)。答案四、编程题1编写的3 个按钮的Click 事件过程代码如下:Private Sub Command1_Click()BackColor=RGB(255,255,255)ForeColor=RGB(0,0,255)FontName=楷体_GB2312

4、FontSize=20CurrentX=1200CurrentY=350Print 静夜思(唐诗)FontName=幼圆PrintFontSize=13Print Spc(6);床前明月光,疑是地上霜PrintPrint Spc(6);举头望明月,低头思故乡End SubPrivate Sub Command2_Click()ClsEnd SubPrivate Sub Command3_Click()EndEnd Sub2编写的命令按钮单击事件过程代码如下:Private Sub Command1_Click()Dim h As Integer, m As Integer,s As Integ

5、er,t As Integert=Val(Text1.Text)h=t3600t=t-h*3600m=t60s=t-m*60Text2.Text=hText3.Text=mText4.Text=sEnd SubPrivate Sub Command1_Click()EndEnd Sub3Private Sub Form_Load()Text2.FontName=隶书Text2.FontSize=16Text3.FontName=楷体_GB2312Text3.FontSize=20End SubPrivate Sub Text1_Change()Text2.Text=Text1.TextText

6、3.Text=Text1.TextEnd SubPrivate Sub Command1_Click() “清除”按钮Text1.Text= 清除文本框Text1 的内容Text2.Text= 清除文本框Text2 的内容Text3.Text= 清除文本框Text3 的内容Text1.SetFocus 设置焦点End SubPrivate Sub Command2_Click()EndEnd Sub4Private Sub Command1_Click()Dim s As Single,ave As SingleDim sx As Single,yw As Single,wy As Singl

7、esx=Val(Text1.Text)yw=Val(Text2.Text)wy=Val(Text3.Text)s=sx+yw+wyave=s/3Text4.Text=总成绩为 & sText5.Text=aveEnd SubPrivate Sub Command2_Click()EndEnd Sub5编写的窗体单击事件过程代码如下:Private Sub Form_Click()Dim x As Integer,a As IntegerDim b As Integer,c As Integerx=Val(InputBox(“请输入一个两位数”)a=Int(x/10) 求十位数b=x Mod 1

8、0 求个位数c=b*10+a 生成新的数MsgBox(“处理后的数为”& c )End Sub6Private Sub Command1_Click()Dim a as integer,b as integer,c as integera=Text1.Textb=Text2.Textc=a+bLabel1.Caption=cEnd SubPrivate Sub Command2_Click()Dim a as integer,b as integer,c as integera=Text1.Textb=Text2.Textc=a-bLabel1.Caption=cEnd SubPrivate

9、Sub Command3_Click()Dim a as integer,b as integer,c as integera=Text1.Textb=Text2.Textc=a*bLabel1.Caption=cEnd SubPrivate Sub Command4_Click()Dim a as integer,b as integer,c as singlea=Text1.Textb=Text2.Textc=a/bLabel1.Caption=cEnd Sub7Private Sub Form_Click()Dim s1 As Single,s2 As Single,s As Singl

10、es1=Val(InputBox(请输入笔试成绩)s2=Val(InputBox(请输入机试成绩)ss1 * 0.6+s2*0.4MsgBox (您的成绩为 & s)End Sub8Private Sub Form_Load()Label1.Caption=0Timer1.Enabled=FalseEnd SubPrivate Sub Command1_Click()Command1.Enabled=FalseCommand2.Enabled=TrueTimer1.Enabled=TrueEnd SubPrivate Sub Command2_Click()Command1.Enabled=T

11、rueCommand2.Enabled=FalseTimer1.Enabled=FalseMsgBox (您的记录为 & Label1.Caption & 秒)End SubPrivate Sub Timer1_Timer()Label1.Caption=Label1.Caption+1End Sub第三章三、编程题1输入a,b,c 三个数,按从大到小的次序显示。运行界面如图3-2 所示。图3-22任意输入一个整数,判定该整数的奇偶性。运行界面如图3-3 所示。图3-33编制程序,计算某个学生奖学金的等级,以语文a、数学b、英语c 三门功课的成绩为评奖依据。奖学金分为一、二、三等,其评奖标准如

12、下。(1)符合下列条件之一的可得一等奖。 三门功课总分在285 分以上。 有两门功课成绩是100 分,且第三门功课成绩不低于80 分者。(2)符合下列条件之一的可得二等奖: 三门功课总分在270 分以上。 有一门功课成绩是l00 分,且其他功课成绩不低于75 分者。(3)各门功课成绩不低于70 分者,获三等奖。(4)符合条件者就高不就低,只能获得高的那一项奖学金。要求显示获奖的等级。运行界面如图3-4 所示。图3-44编制程序,根据用户输入的考试成绩,按表3-1 分数与等级的对照标准,输出相应的等级,运行界面如图3-5 所示。图3-55计算分段函数:的值。运行界面如图3-6 所示。图3-66公

13、用电话收费标谁如下:通话时间在3 分钟以内,收费0.2 元;3 分钟以上,则每超过1 分钟加收0.1 元。编写一段程序,计算某人通话X 分钟,应缴多少电话费? 运行界面如图3-7 所示。图3-7答案:三、编程题1方法1:Private Sub Command1_Click()a=Val(Text1.Text)b=Val(Text2.Text)c=Val(Text3.Text)If ba Then t=a:a=b:b=tIf bc ThenLabel4.Caption=aLabel5.Caption=bLabel6.Caption=cElseIf c a ThenLabel4.Caption=c

14、Label5.Caption=aLabel6.Caption=bElseLabel4.Caption=aLabel5.Caption=cLabel6.Caption=bEnd IfEnd SubPrivate Sub Command2_Click()EndEnd Sub方法2:Private Sub Command1_Click()a = Val(Text1.Text)b = Val(Text2.Text)c = Val(Text3.Text)If a b Then t = a: a = b: b = tIf a c Then t = a: a = c: c = tIf b =285 Or (

15、a=100 And b=100 And c=80) Or (b=100 Andc=100 And a=80) Or (a=100 And c=100 And b=80) ThenLabel5.Caption=一等奖ElseIf a+b+c=270 Or (a=100 And b=75 And c=75) Or (b=100And a=75 And c=75) Or (c=100 And a=75 And b=75) ThenLabel5.Caption=二等奖ElseIf a=70 And b=70 And c=70 ThenLabel5.Caption=三等奖ElseLabel5.Capti

16、on=无End IfEnd SubPrivate Sub Command2_Click()EndEnd Sub4Private Sub Command1_Click()x=Val(Text1.Text)Select Case xCase Is=90Label3.Caption=优秀Case 80 To 89Label3.Caption=良好Case 70 To 79Label3.Caption=中Case 60 To 69Label3.Caption=及格Case ElseLabel3.Caption = 不及格End SelectEnd SubPrivate Sub Command2_Cli

17、ck()EndEnd Sub5Private Sub Command1_Click()x=Val(Text1.Text)Select Case xCase Is=1Label3.Caption=3*x3Case ElseLabel3.Caption=2*x+1End SelectEnd SubPrivate Sub Command2_Click()EndEnd Sub6方法1:Private Sub Command1_Click()x=Val(Text1.Text)If x=3 ThenLabel3.Caption=0.2 元Elsey=(x-3)*0.1+0.2If y1 ThenLabel

18、3.Caption=0. & y & 元ElseLabel3.Caption=Str(y) & 元End IfEnd IfEnd SubPrivate Sub Command2_Click()EndEnd Sub方法2:Private Sub Command1_Click()x=Val(Text1.Text)If x=3 ThenLabel3.Caption=0.2 元Elsey=(x-3)*0.1+0.2Label3.Caption= Format(y, 0.0) & 元End SubPrivate Sub Command2_Click()EndEnd Sub第四章三、编程题1建立一个“求和

19、程序”窗体,运行界面如图4-3 所示。要求:可执行从11 000 之间的整数累加运算。拖动水平滚动条滑块,可显示并设定要累加的选取数字。单击“计算”按钮,可执行从1 到选取的数字之间的整数的累加运算,并显示在文本框中,文本框中不允许直接输入数字。图 4-32用循环显示如图4-4 所示的结果。要求:单击图片框,在图片框中打印九九乘法表。图 4-43在列表框中输出1100 之间不能被3 整除的数,要求用Do 语句实现,运行界面如图4-5 所示。图 4-5 4在图片框中打印如图4-6 所示的沙漏图形。图 4-65编程求1!+2!+3!+10!的结果,程序运行界面如图4-7 所示。图4-76编程求ex

20、 的近似值,要求最后一项的值小于等于0.000 001 时停止计算。ex 的展开式为:程序运行界面如图4-8所示图4-8答案:三、编程题1Private Sub Command1_Click()s=0For i=1 To HScroll1.Values=s+iNext iLabel3.Caption=sEnd SubPrivate Sub Command2_Click()EndEnd SubPrivate Sub HScroll1_Change()Label1.Caption=选取的数字为: & HScroll1.ValueEnd Sub2Private Sub Picture1_Click(

21、)Dim se As StringPicture1.Print Tab(35); 九九乘法表 Picture1.Print Tab(35);-For i=1 To 9For j=1 To ise=i & & j & = & i * jPicture1.Print Tab(j-1)*9+1);se;Next jPicture1.PrintNext iEnd Sub3Private Sub Command1_Click()j=1Do While j=100If j Mod 30 ThenList1.AddItem jEnd Ifj=j+1LoopEnd SubPrivate Sub Command

22、2_Click()EndEnd Sub4Private Sub Command1_Click()For i = 1 To 5Picture1.Print Tab(3 * i); ;For j = 1 To 17 - i * 3Picture1.Print ;Next jPicture1.Print ;Picture1.PrintNext iPicture1.Print Tab(3 * i); ;For i = 5 To 1 Step -1Picture1.Print Tab(3 * i); ;For j = 1 To 17 - i * 3Picture1.Print ;Next jPictur

23、e1.Print ;Picture1.PrintNext iEnd SubPrivate Sub Command2_Click()EndEnd Sub5Private Sub Command1_Click()s=0:n=1For i=1 To 10n= n*i s=s+nNext iLabel3.Caption=sEnd SubPrivate Sub Command2_Click()EndEnd Sub6Private Sub Command1_Click()x=Val(Text1.Text)s=1:n=1t=x/nDo While t0.s=s+tn=n+1t=t*x/nLoopLabel3

24、.Caption=sEnd SubPrivate Sub Command2_Click()EndEnd Sub第五章三、编程题1随机产生10 个0100 之间的正整数,将它们按从大到小的顺序排列。运行界面如图5-3 所示。图 5-32输入整数N,显示出具有N 行的“杨辉三角形”。一个具有9 行的杨辉三 角形运行效果如图5-4所示。图5-43从40 分100 分随机产生50 名学生的物理课程考试成绩,要求在列表框中显示所有考试成绩,并在图片框中统计各分数段人数,即4059、6069、7079、8089、90100,显示结果如图5-5所示。图5-55按图5-6 所示,当在文本框中输入任意字母或数字

25、时,单击“统计”按钮,将会在图片框中打印出数字字符09 出现的次数。图5-66利用随机数生成矩阵A(数据不一定相同,要求数据范围在2080 之间),求A 的转置矩阵。运行界面如图5-7 所示(分别在图片框中显示)。图5-76建立含有4 个命令按钮的控件数组,当单击某个命令按钮时,分别显示不同的图形或结束操作。控件名称及相关属性如表5-1 所示,程序运行界面如图5-8 所示。图5-8答案:三、编程题1方法1:Private Sub Command1_Click()Dim x(1 To 10) As IntegerPrintPrint 原始数据:For i = 1 To 10x(i) = Int(

26、Rnd * 101)Print x(i);Next iPrint: PrintPrint 排序数据:For i = 1 To 9For j = i + 1 To 10If x(i) x(j) Thent = x(i)x(i) = x(j)x(j) = tEnd IfNext jPrint x(i);Next iPrint x(10)End Sub方法2:Private Sub Command1_Click()Dim x(1 To 10) As IntegerClsPrintRandomizePrint 原始数据:For i = 1 To 10x(i) = Int(Rnd * 101)Print

27、 x(i);Next iPrint: PrintPrint 排序数据:For i = 1 To 9Max = iFor j = i + 1 To 10If x(Max) =0 And c=9 Thenj=Val(c)num(j)=num(j)+1End IfNext iFor i=0 To 9If num(i)0 ThenPicture1.Print 数字;i;出现的次数为:;num(i)End IfNext iEnd SubPrivate Sub Command2_Click()EndEnd Sub5Private Sub Command1_Click()Dim a(4,4),b(4,4)

28、As IntegerFor i=1 To 4For j=1 To 4a(i,j)=Int(Rnd*61+20)b(j,i)=a(i,j)Picture1.Print a(i,j)Next jPicture1.PrintNext iFor i=1 To 4For j=1 To 4Picture2.Print b(i,j)Next jPicture2.PrintNext iEnd SubPrivate Sub Command2_Click()EndEnd Sub6Private Sub Command1_Click(Index As Integer)Picture1.ClsPicture1.Fil

29、lStyle=6Select Case IndexCase 0Picture1.Print 画直线Picture1.Line (2,2)-(7,7)Case 1Picture1.Print 画矩形Picture1.Line (2,2)-(7,7),BFCase 2Picture1.Print 画圆Picture1.Circle (4.5,4.5),3.5,1Case ElseEndEnd SelectEnd SubPrivate Sub Form_Load()Picture1.Scale (0,0)-(10,10) 设置坐标系End Sub第六章四、编程题1求P 的值。运行界面如图:2设a 为

30、一个整数,如果能使a2 的低位与a 相同,则称a 为“守形数”。例如:5225,252625,则5 和25 都是守形数。试编写一个函数过程,利用该过程查找1100之间的所有守形数。运行界面如图3某班有40 名学生,按学号顺序输入了39 名学生的入学成绩(注:可使用随机函数生成39 个0100 之间的数据),学号为12号的学生成绩没有输入。请将12 号学生的入学成绩插入到指定位置。运行界面如图。4编写一个子过程Delstr(s1,s2),将字符串s1 中出现的子字符串s2 删除,结果还存放在s1 中。例如,s1=I am a student,s2=am,结果为I a student。运行界面如图

31、。答案:四、编程题1Option ExplicitPrivate Function sum(i As Integer) As IntegerDim sum2 As IntegerDim j As IntegerFor j=1 To isum2=sum2+jNext jsum=sum2End FunctionPrivate Sub command1_click()Dim i As IntegerDim sum1 As DoubleFor i=1 To 10sum1=sum1+1/sum(i)Next iPrintPrint Tab(5);P=;sum1End Sub2Option Explici

32、tPrivate Sub find(x As Integer)Dim i As Integer, j As IntegerDim n As LongDim duc As String, s As StringPrintPrint 1 到; x; 之间的守形数有:For i = 1 To xs = LTrim(Str(i)n = i * iduc = Right(Str(n), Len(s)If i = Val(duc) ThenPrint i;End IfNext iEnd SubPrivate Sub Command1_Click()Dim x As Integerx = InputBox(

33、请输入X 值)Call find(x)End Sub3Dim score(1 To 30) As IntegerPublic Sub insert(n As Integer)For i = 29 To n Step -1 score(i + 1) = score(i)Next is = InputBox(请输入插入成绩)score(n) = sEnd SubPrivate Sub Command1_Click()Dim num As IntegerDim i As Integernum = InputBox(请输入插入 的学号:, 输入)Call insert(num)For i = 1 To

34、 30pic2.Print score(i);If i Mod 10 = 0 Then pic2.PrintNext iEnd SubPrivate Sub form_Load()RandomizeDim i As Integerpic1.AutoRedraw = TrueFor i = 1 To 29score(i) = Int(101 * Rnd)pic1.Print score(i);If i Mod 10 = 0 Then pic1.PrintNext iEnd Sub4Option ExplicitPrivate Sub delstr(s1 As String,s2 As Strin

35、g)Dim n1 As Integer,n2 As Integer,i As Integern1=Len(s1)n2=Len(s2)i=1Do While in1-n2+1If Mid(s1,i,n2)=s2 Thens1=Left(s1,i-1) & Mid(s1,i+n2)Elsei=i+1End IfLoopEnd SubPrivate Sub command1_click()Dim t1 As String,t2 As Stringt1=Text1.Textt2=Text2.Textdelstr t1,t2Label3.Caption=操作结果是: & t1End Sub第七章三、编程

36、题2利用图7-1 所示的窗体界面建立学生成绩顺序文件Score.txt。题目要求的路径答案:三、编程序2Private Sub Form_Load()Open Score.txt For Output As #1End SubPrivate Sub Command1_Click()Dim num As String*6,name As String*8,score As Integernum=Text1.Textname=Text2.Textscore=Val(Text3.Text)Write #1,num,name,scoreText1.Text=Text2.Text=Text3.Text=

37、Text1.SetFocusEnd SubPrivate Sub Command2_Click()Close #1EndEnd Sub第八章二、编程题1建立主菜单“功能”,建立二级菜单“打开文件”、“保存文件”、“用星号画菱形”和“退出”,在文本框中分别实现以上菜单的功能。程序运行界面如图8-1 所示。图8-12.(删除)答案:二、编程题1首先在“菜单编辑器”中建立题目要求的菜单,实现各菜单功能的参考代码如下:“用星号画菱形”菜单的代码:Private Sub MnuDraw_Click()Text1.Text=For i=1 To 10For j=1 To iText1.Text=Text1

38、.Text & NextFor j=1 To 10Text1.Text=Text1.Text & *NextText1.Text=Text1.Text & Chr(13) & Chr(10)NextEnd Sub“退出”菜单的代码:Private Sub MnuExit_Click()EndEnd Sub“打开文件”菜单的功能代码:Private Sub MnuOpen_Click()Dim strFileName As StringDim str As StringDlgCtrl.DialogTitle=打开DlgCtrl.Filter=*.txt|*.TXTDlgCtrl.ShowOpen

39、If DlgCtrl.FileName= ThenMsgBox 您没有选择文件!,vbOKOnlyElseIf strFileName ThenCloseEnd IfText1.Text=strFileName=DlgCtrl.FileNameOpen strFileName For Input As #1Do While Not EOF(1)Line Input #1,strText1.Text=Text1.Text & Chr(13) & Chr(10) & strLoopClose #1End IfEnd Sub“保存文件”菜单的功能代码:Private Sub MnuSave_Clic

40、k()Dim strNewFile As StringstrNewFile=文件.txtOpen strNewFile For Output As #2Print #2,Text1.TextClose #2End Sub第九章三、编程题1请按图9-3 在“画图示例”窗体中添加一个图片框,再添加两个命令按钮(Command1 和Command2)。单击“画线”,得到一个宽和高都是2 000 的图片框,并对图片框清屏并画一条从左上角到右下角的对角线;单击“画椭圆”按钮,得到一个宽为1 500 高为2 000 的图片框,图片框清屏并画中心为(750,1000)、半径为600、纵横比为2 的椭圆(坐标系为默认坐标)。(a) (b)图9-32创建一个绘图程序。程序运行界面如图9-4 所示。当程序运行时,单击“显示”按钮,在窗体上的图片框中绘制出,即3.14,3.14区间的正弦曲线。要求将图片框的坐标系定义为左上角为(4,2),右下角为(4,2),并在图片框中画出坐标的x 轴和y 轴。图9-43李萨如曲线,其数学表达式

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论