编程练习一到四及答案教学提纲.docx
- 文档编号:28154289
- 上传时间:2023-07-08
- 格式:DOCX
- 页数:14
- 大小:31.62KB
编程练习一到四及答案教学提纲.docx
《编程练习一到四及答案教学提纲.docx》由会员分享,可在线阅读,更多相关《编程练习一到四及答案教学提纲.docx(14页珍藏版)》请在冰豆网上搜索。
编程练习一到四及答案教学提纲
编程练习一到四及答案
编程练习一
1.按指定方法编程序实现如下分段函数。
lnxx>5
y=ex1≤x≤5
x<1
方法一:
用单行If语句实现运行时,从文本框Text1输入x值,单击“计算”按钮Command1按以上公式计算y值,计算结果保留三位小数,显示于标签Label2上。
PrivateSubCommand1_Click()
PrivateSubCommand1_Click()
DimxAsSingle,yAsSingle
x=Val(Text1.Text)
'Ifx>5Theny=Log(x)ElseIfx>=1Theny=Exp(x)Elsey=Sqr(Abs(x^3=2*x+1))
Ifx>5Theny=Log(x)
Ifx>=1Andx<=5Theny=Exp(x)
Ifx<1Theny=Sqr(Abs(x^3+2*x+1))
Label2.Caption=Format(y,"0.000")
EndSub
方法二:
用块If语句实现运行时,用输入框(InputBox)输入x值,单击“计算”按钮Command1按以上公式计算y值,计算结果保留三位小数,显示于文本框Text2中。
PrivateSubCommand1_Click()
PrivateSubCommand2_Click()
DimxAsSingle,yAsSingle
x=Val(InputBox("请输入x的值"))
Ifx>5Then
y=Log(x)
ElseIfx>=1Then
y=Exp(x)
Else
y=Sqr(Abs(x^3+2*x+1))
EndIf
Text2.Text=Format(y,"0.000")
EndSub
EndSub
方法三:
用多分支选择语句实现运行时,用输入框(InputBox)输入x值,单击“计算”按钮Command1按以上公式计算y值,计算结果保留三位小数,显示于窗体上。
PrivateSubCommand1_Click()
PrivateSubCommand3_Click()
DimxAsSingle,yAsSingle
x=Val(InputBox("请输入x的值"))
SelectCasex
CaseIs>5
y=Log(x)
CaseIs>=1
y=Exp(x)
CaseElse
y=Sqr(Abs(x^3+2*x+1))
EndSelect
Form1.ScaleHeight=100
Form1.ScaleWidth=100
CurrentX=35
CurrentY=90
PrintFormat(y,"0.000")
EndSub
编程练习二
1.编程序实现:
运行时单击窗体,用输入框(InputBox)输入n的值,求
的值,计算结果打印在当前窗体上。
PrivateSubForm_Click()
1
PrivateSubForm_Click()
DimnAsInteger,sAsSingle,iAsInteger
n=Val(InputBox("请输入n的值:
"))
Fori=1Ton
s=s+1/(2*i-1)
Nexti
CurrentX=200
CurrentY=2200
Print"s=";Format(s,"0.000")
EndSub
2.编程序实现:
运行时单击窗体,用文本框Text1输入x的值,求
小于x的最大值,计算结果显示于标签Label3上。
PrivateSubForm_Click()
2
PrivateSubCommand1_Click()
DimxAsDouble,FAsDouble,iAsInteger
x=Val(Text1.Text)
F=1
WhileF i=i+1 F=F*(2*i-1) Wend F=F/(2*i-1) Label3.Caption=Str(F) EndSub PrivateSubCommand2_Click() DimxAsDouble,FAsDouble,iAsInteger x=Val(Text1.Text) F=1: i=-1 WhileF i=i+2 F=F*i 3、编写程序在窗体上输出如下图所示的图形。 要求: 通过输入框函数InputBox输入打印图形的行数和构成图形的字符,通过循环实现图形输出。 PrivateSubCommand1_Click() DimNAsInteger,SAsString,iAsInteger N=Val(InputBox("请输入行数: ")) S=InputBox("请输入构成图形的字符") Fori=1ToN PrintTab(i); Forj=1To2*N-2*i+1 PrintS; Nextj Print Nexti EndSub PrivateSubCommand2_Click() DimNAsInteger,SAsString,iAsInteger N=Val(InputBox("请输入行数: ")) S=InputBox("请输入构成图形的字符") Fori=NTo1Step-1 PrintTab(N-i+1); Forj=1To2*i-1 PrintS; Nextj Print Nexti EndSub PrivateSubCommand3_Click() DimNAsInteger,SAsString,iAsInteger N=Val(InputBox("请输入行数: ")) S=InputBox("请输入构成图形的字符") Fori=NTo1Step-1 PrintTab(N-i+1);String(2*i-1,S) Nexti EndSub 编程练习三 1.编程序实现: 运行时,单击命令按钮Command1从键盘输入N个学生的成绩并显示于带水平滚动条的文本框Text1中,统计其中大于平均分的学生人数并显示于标签Label2中。 1 DimA()AsSingle,NAsInteger PrivateSubcommand1_Click() Text1.Text="" Dimnum1AsInteger DimtotalAsSingle,averageAsSingle num1=0 N=Val(InputBox("请输入学生的人数: ")) ReDimA(1ToN) Fori=1ToN A(i)=Val(InputBox("请输入第"&Str(i)&"个学生的成绩","请输入成绩","")) Text1.Text=Text1.Text&Str(A(i))&"" total=total+A(i) Nexti average=total/N Fori=1ToN SelectCaseA(i) CaseIs>average num1=num1+1 EndSelect Nexti Label2.Caption="大于平均分的学生人数为"&Str(num1) EndSub PrivateSubCommand2_Click() End EndSub 2.编写程序实现: 运行时,单击第一个按钮“生成随机数”(Command1),生成100个[100,199]之间的随机整数,存于一维数组B中显示于文本框Text1中,单击第二个按钮“求最小数”(Command2),求出这100个随机整数的最小数,并将结果显示在文本框Text2中。 2 DimB(1To100)AsInteger PrivateSubCommand1_Click() Text1.Text="" Randomize Fori=1To100 B(i)=Int(Rnd*100+100) Text1.Text=Text1.Text&Str(B(i))&Space (2) Nexti EndSub PrivateSubCommand2_Click() DimMinAsInteger Min=B (1)'设变量Min的初始值为数组中的第一个元素值 '通过循环依次比较,求最小值 Fori=1To100 IfB(i) Nexti Text2.Text=Str(Min)'显示最小值 EndSub 3.编程序实现: 运行时,单击命令按钮Command1生成100个[-10,10]之间的随机整数,保存到数组A中,同时显示于带水平滚动条的文本框Text1中,单击命令按钮Command2对这100个数按从大到小的顺序排序,结果显示于带水平滚动条的文本框Text2中。 DimC(1To100)AsInteger PrivateSubCommand1_Click() Text1.Text="" Randomize Fori=1To100 C(i)=Int(Rnd*21-10) Text1.Text=Text1.Text&Str(C(i))&Space(3) Nexti EndSub PrivateSubCommand2_Click() Fori=1To99 Forj=i+1To100 IfC(i) t=C(i) C(i)=C(j) C(j)=t EndIf Nextj Nexti Text2.Text="" Fori=1To100 Text2.Text=Text2.Text&Str(C(i))&Space(3) Nexti EndSub 4.下面程序实现: 运行时,单击命令按钮Command11生成50个[1,100]之间的随机整数,保存到一维数组X中,同时显示于一个带水平滚动条的文本框Text1中;单击命令按钮Command2从文本框Text2输入某数,查找该数: 如果该数在数组中,则在标签Label3中显示该数在数组中第1次出现的位置,否则在标签Label3中显示“没找到”。 4 DimD(1To50)AsInteger'在窗体的通用声明段声明数组A PrivateSubCommand1_Click() Randomize ForI=1To50 D(I)=Int(Rnd*100+1) Text1.Text=Text1.Text&Str(D(I)) NextI EndSub PrivateSubCommand2_Click() DimnmberAsInteger,kAsInteger Number=Val(Text2.Text) k=0'假设用变量k保存查找位置 '顺序查找 ForI=1To50 IfD(I)=NumberThen'如果找到 k=I'保存找到的位置 ExitFor'退出循环 EndIf NextI '根据k的值判断查找结果 Ifk>0Then Label3.Caption="所找的数在第"&Str(k)&"个位置" Else Label3.Caption="没找到" EndIf Text2.SetFocus Text2.SelStart=0 Text2.SelLength=Len(Text2.Text) EndSub 编程练习四 1. (1)编写一个计算表达式 值的函数过程,过程名称为F1。 (2)在命令按钮Command1的Click事件过程中编写代码,分别从文本框Text1、Text2、Text3输入a、b、c的值,调用以上函数过程求以下表达式的值,用标签Label5显示计算结果。 1 FunctionF1(x,y) F1=Sqr(Abs(x^3+y^3)) EndFunction PrivateSubCommand1_Click() a=Val(Text1.Text) b=Val(Text2.Text) c=Val(Text3.Text) y=(F1(a,b)+F1(a,c))/F1(b,c) Label5.Caption=Format(y,"0.000") EndSub 2. (1)编写一函数过程,过程名称为F2,用于计算1+2+3+…+n的值。 (2)在窗体的Click事件过程中,用输入框(InputBox)输入a、b、c的值,调用以上函数过程F2计算以下y值,用消息框(MsgBox函数)显示计算结果。 2 FunctionF2(n) Sum=0 Fori=1Ton Sum=Sum+i Nexti F2=Sum EndFunction PrivateSubForm_Click() a=Val(InputBox("请输入a")) b=Val(InputBox("请输入b")) c=Val(InputBox("请输入c")) y=F2(a)*F2(b)*F2(c) MsgBox"y="&Str(y) EndSub 3. (1)编写一个Sub过程,过程名称为S1,用于计算n! 。 (2)编写命令按钮Command1的Click事件过程实现: 运行时,单击Command1,分别从文本框Text1、Text2输入m和n的值,调用以上Sub过程S1计算以下y值,计算结果显示在文本框Text3中。 3 SubS1(n,f) f=1 Fori=1Ton f=f*i Nexti EndSub PrivateSubCommand1_Click() m=Val(Text1.Text) n=Val(Text2.Text) CallS1(m,f1) CallS1(n,f2) y=(f1-f2)/(f1+f2) Text3.Text=Format(y,"0.0000") EndSub 4. (1)编写一个Sub过程,过程名称为S2,用于求任意一维数组元素的最大值和最小值。 (2)在“生成随机数”按钮Command1的Click事件过程中生成100个[-50,50]区间的随机整数,显示在第一个文本框Text1中。 (3)在命令按钮Command2的Click事件过程中调用以上Sub过程求这些随机整数的最大值和最小值,显示在第二个文本框Text2中。 4 Dima(1To100)AsInteger SubS2(x()AsInteger,Max,Min) k1=LBound(x) k2=UBound(x) Max=x(k1) Min=x(k1) Fori=k1Tok2 Ifx(i)>MaxThenMax=x(i) Ifx(i) Nexti EndSub PrivateSubCommand1_Click() Text1.Text="" Randomize Fori=1To100 a(i)=Int(Rnd*101-50) Text1.Text=Text1.Text&Str(a(i))&"" Nexti EndSub PrivateSubCommand2_Click() CallS2(a(),Max,Min) Text2.Text="最大数为: "&Str(Max)&"最小数为: "&Str(Min) EndSub
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 编程 练习 一到四 答案 教学 提纲