上机习题3教案(范文模版)

时间:2019-05-13 00:01:30下载本文作者:会员上传
简介:写写帮文库小编为你整理了多篇相关的《上机习题3教案(范文模版)》,但愿对你工作学习有帮助,当然你在写写帮文库还可以找到更多《上机习题3教案(范文模版)》。

第一篇:上机习题3教案(范文模版)

实验三 MATLAB7.0基本编程

实验目的:

① 掌握脚本和函数;

② 掌握matlab中的变量和M文件的流控制语句; ③ 掌握函数的设计和实现。

实验要求:给出程序和实验结果。实验内容: 一、一个三位整数各位数字的立方和等于该数本身则称该数为水仙花数。输出全部水仙花数。

二、从键盘输入若干个数,当输入10时结束输入,求这些数的平均值和它们之和。

三、求[1000,2000]之间第一个能被17整除的整数。

四、若一个数等于它的各个真因子之和,则称该数为完数,如6=1+2+3,所以6是完数。求[1,10000]之间的全部完数。

五、Fibonacci数列定义如下:

f1=1 f2=1 fnfn1fn2,(n2)

求Fibonacci数列的第20项。

六、设计一个猜数游戏。首先由计算机产生[1,100]之间的随机整数,然后由用户猜测所产生的随机数。根据用户猜测的情况给出不同提示,如猜测的数大于产生的数,则显示“High”,小于则显示“Low”,等于则显示“You won”,同时退出游戏。用户最多可以猜7次。实验结果:

一、一个三位整数各位数字的立方和等于该数本身则称该数为水仙花数。输出全部水仙花数。

程序如下: for m=100:999 m1=fix(m/100);%求m的百位数字 m2=rem(fix(m/10),10);%求m的十位数字 m3=rem(m,10);%求m的个位数字 if m==m1*m1*m1+m2*m2*m2+m3*m3*m3 disp(m)end end 153 370 371 407

二、从键盘输入若干个数,当输入0时结束输入,求这些数的平均值和它们之和。程序如下: sum=0;cnt=0;val=input('Enter a number(end in 0):');while(val~=0)sum=sum+val;cnt=cnt+1;val=input('Enter a number(end in 0):');end if(cnt > 0)sum mean=sum/cnt end Enter a number(end in 0):45 Enter a number(end in 0):65 Enter a number(end in 0):342 Enter a number(end in 0):45 Enter a number(end in 0):67 Enter a number(end in 0):12 Enter a number(end in 0):0 sum = 576

mean =

三、求[100,200]之间第一个能被21整除的整数。程序如下: for n=100:200 if rem(n,21)~=0 continue end break end n n = 105

四、若一个数等于它的各个真因子之和,则称该数为完数,如6=1+2+3,所以6是完数。求[1,500]之间的全部完数。for m=1:500 s=0;for k=1:m/2 if rem(m,k)==0 s=s+k;end end if m==s disp(m);end end 6 28 496

五、Fibonacci数列定义如下:

f1=1 f2=1 fnfn1fn2,(n2)

求Fibonacci数列的第20项。编写程序为: for i=3:20;

f(1)=1;

f(2)=1;

f(i)=f(i-1)+f(i-2);end >> f f =

Columns 1 through 7 8

3 5 4

Columns 8 through 14

144

233

377

Columns 15 through 20

610

987

1597

2584

4181

6765

六、设计一个猜数游戏。首先由计算机产生[1,100]之间的随机整数,然后由用户猜测所产生的随机数。根据用户猜测的情况给出不同提示,如猜测的数大于产生的数,则显示“High”,小于则显示“Low”,等于则显示“You won”,同时退出游戏。用户最多可以猜7次。

命令如下:

a=fix(rand(1)*100+1);k=1;for k=1:7 n=input('输入一个1-100的整数:n=');if n>a disp('High');elseif n

补充:

例3-1 分别建立命令文件和函数文件,将华氏温度f转换为摄氏温度c。程序1:

首先建立命令文件并以文件名f2c.m存盘。M文件建立如下:

clear;%清除工作空间中的变量 f=input('Input Fahrenheit temperature:');c=5*(f-32)/9 然后在MATLAB的命令窗口中输入f2c,将会执行该命令文件,执行情况为: Input Fahrenheit temperature:73 c = 22.7778 程序2:

首先建立函数文件f2c.m。function c=f2c(f)c=5*(f-32)/9 然后在MATLAB的命令窗口调用该函数文件。>> clear;y=input('Input Fahrenheit temperature:');x=f2c(y)Input Fahrenheit temperature:70 c =

21.1111

x =

21.1111 例3-2 输入x,y的值,并将它们的值互换后输出。程序如下:

x=input('Input x please.');

y=input('Input y please.');z=x;x=y;y=z;disp(x);disp(y);Input x please.34 Input y please.54 54 34 例3-3 求一元二次方程ax2 +bx+c=0的根。程序如下: a=input('a=?');b=input('b=?');c=input('c=?');d=b*b-4*a*c;x=[(-b+sqrt(d))/(2*a),(-b-sqrt(d))/(2*a)];disp(['x1=',num2str(x(1)),',x2=',num2str(x(2))]);a=?1 b=?7 c=?9 x1=-1.6972,x2=-5.3028 例3-4 计算分段函数的值。

程序如下:

x=input('请输入x的值:');if x<=0 y=(x+sqrt(pi))/exp(2);else y=log(x+sqrt(1+x*x))/2;end y 请输入x的值:5 y =

1.1562 例3-5 输入一个字符,若为大写字母,则输出其对应的小写字母;若为小写字母,则输出其对应的大写字母;若为数字字符则输出其对应的数值,若为其他字符则原样输出。

c=input('请输入一个字符','s');if c>='A' & c<='Z' disp(char(abs(c)+abs('a')-abs('A')));elseif c>='a'& c<='z' disp(char(abs(c)-abs('a')+abs('A')));elseif c>='0'& c<='9' disp(abs(c)-abs('0'));else disp(c);end 请输入一个字符O O 例3-6 某商场对顾客所购买的商品实行打折销售,标准如下(商品价格用price来表示):

price<200 没有折扣 200≤price<500 3%折扣 500≤price<1000 5%折扣 1000≤price<2500 8%折扣 2500≤price<5000 10%折扣 5000≤price 14%折扣

输入所售商品的价格,求其实际销售价格 建立m文件且以eg.m命名: price=input('请输入商品价格');switch fix(price/100)case {0,1} %价格小于200 rate=0;case {2,3,4} %价格大于等于200但小于500 rate=3/100;case num2cell(5:9)% rate=5/100;case num2cell(10:24)% rate=8/100;case num2cell(25:49)% rate=10/100;otherwise % rate=14/100;end price=price*(1-rate)% eg 请输入商品价格390 price =

378.3000 >> eg 请输入商品价格23090 price =

价格大于等于500但小于1000 价格大于等于1000但小于2500 价格大于等于2500但小于5000 价格大于等于5000 输出商品实际销售价格 9 1.9857e+004 例3-7 矩阵乘法运算要求两矩阵的维数相容,否则会出错。先求两矩阵的乘积,若出错,则自动转去求两矩阵的点乘。程序如下:

A=[1,2,3;4,5,6];B=[7,8,9;10,11,12];try C=A*B;catch C=A.*B;end C lasterr %显示出错原因 C =

40 55 72

ans =

Error using ==> mtimes Inner matrix dimensions must agree.n已知 y12i1,当n=100时,求y的值。i1 程序如下: y=0;n=100;for i=1:n y=y+1/(2*i-1);10 end y y =

3.2843

例3-10 写出下列程序的执行结果。s=0;a=[12,13,14;15,16,17;18,19,20;21,22,23];for k=a s=s+k;end disp(s');39 48 57 66 例3-14 编写函数文件求半径为r的圆的面积和周长。

编写m文件并命名为fcircle.m如下: function [s,p]=fcircle(r)%FCIRCLE calculate the area and perimeter of a circle of radii r %r 圆半径 %s 圆面积 %p 圆周长 s=pi*r*r;p=2*pi*r;circle(2)ans =

12.5664 例3-15 利用函数文件,实现直角坐标(x,y)与极坐标(ρ,θ)之间的转换。

函数文件tran.m:

function [rho,theta]=tran(x,y)rho=sqrt(x*x+y*y);theta=atan(y/x);在命令窗体输入命令: x=input('Please input x=:');y=input('Please input y=:');[rho,the]=tran(x,y);rho the Please input x=:5 Please input y=:7 rho =

8.6023

the =

0.9505 例3-16 利用函数的递归调用,求n!。n!本身就是以递归的形式定义的:

显然,求n!需要求(n-1)!,这时可采用递归调用。递归调用函数文件factor.m如下:

function f=factor(n)if n<=1 f=1;else f=factor(n-1)*n;%递归调用求(n-1)!end 在命令窗体输入: factor(9)ans =

362880

>> factor(67)ans =

3.6471e+094

例3-17 nargin用法示例。

函数文件charray.m: function fout=charray(a,b,c)if nargin==1 fout=a;elseif nargin==2 fout=a+b;elseif nargin==3 fout=(a*b*c)/2;end 在命令窗体中输入: x=[1:3];>> y=[1;2;3];>> charray(x)ans =

3

>> charray(x,y')ans =

6

>> charray(x,y,3)ans = 21 例3-18 全局变量应用示例。

先建立函数文件wadd.m,该函数将输入的参数加权相加。function f=wadd(x,y)global ALPHA BETA f=ALPHA*x+BETA*y;在命令窗口中输入: global ALPHA BETA ALPHA=1;BETA=2;s=wadd(1,2)s = 5 14

第二篇:上机习题2教案

实验二

基本矩阵操作

实验目的:

① 掌握matlab变量和数据操作;

② 掌握matlab矩阵的创立、拆分及特殊矩阵;

③ 掌握matlab运算,掌握matlab在矩阵分析中的应用,掌握稀疏矩阵的存储方式和创建方法;

④ 了解字符串处理函数。

实验要求:给出程序和实验结果。实验内容:

1、利用列向量1,2,3,10建立一个范得蒙矩阵A,并利用位于矩阵A的奇数

T行偶数列的元素建立一个新的矩阵B,须保持这些元素的相对位置不变。

2、矩阵的基本运算与点运算的区别。

3、给出矩阵的两种存储方式的联系和区别,这两种存储方式在实际应用中主要应用于具有什么特点的矩阵?

4.将字符串'very good'转换为等值的整数。

5.按水平和竖直方向分别合并下述两个矩阵:

6.分别删除第5题两个结果的第2行。

7.分别将第5题两个结果的第2行最后3列的数值改为[11 12 13]。8.

分别查看第5题两个结果的各方向长度。9.

分别判断pi是否为字符串和浮点数。

10.分别将第5题两个结果均转换为29的矩阵。11.计算第5题矩阵A的转置。

12.分别计算第5题矩阵A和B的A+B、A.* B和AB。13.判断第5题矩阵A和B中哪些元素值不小于4。

14.分别用函数strcat()和矩阵合并符合并如下字符串:' The picture is '和' very good '。

15.创建字符串数组,其中元素分别为‘Picture ’和'Pitch '。16.在第14题结果中查找字符串'e'。17.在第15题结果中匹配字符串'Pi'。

18.将十进制的50转换为二进制的字符串;将十六进制的字符串‘50’转换为三

进制的整数。

实验结果:

1.x=1:10 x =

A=Vander(x)B=A(1:2:9,2:2:10)2.矩阵的基本运算中A*B,A列长度必须和矩阵B的行长度一致。而点乘运算如A.*B则两矩阵必须具有相同长度,除非其中之一是标量。

3.矩阵的两种存储方式分别是满矩阵存储和稀疏矩阵存储。两种存储方式可以互相转化,满矩阵存储方式是MATLAB默认的存储方式。稀疏矩阵只有少数的元素非零,如果稀疏矩阵采用满矩阵存储方式会浪费很多存储空间。4.x=double('very good')x =

118

114

121

5.A=[1 0 0;1 1 0;0 0 1];B=[2 3 4;5 6 7;8 9 10];C=[A B] D=[A;B] 6.C(2,:)=[] D(2,:)=[] 7.C(2,4:1:6)=[11,12,13] C =

0

0

0

0

0

D(2,1:1:3)=[11,12,13] D =

0

0

0

0

8.c=size© d= Size(D)9.ischar(pi)ans =

0 Isfloat(pi)ans =

10.e=replace(C,2,9)f=replace(D,2,9)11.A=[1 0 0;1 1 0;0 0 1] a=transpose(A)A =

0

0

0

0

0

a=

0

0

0

0

0 12.A=[1 0 0;1 1 0;0 0 1] B=[2 3 4;5 6 7;8 9 10] h=A+B I=A.*B J=AB A =

0

0

0

0

0

B =

h =

I =

0

0

0

0

0

J =

13.a=A>=4 a =

0

0

0

0

0

0

0

0

0

>> b=B>=4 b =

0

0 14.a='The picture is ';>> b=' very good';>> c=strcat(a,b)c =

The picture is very good 或c=[a b] 15.c=char('Picture','Pitch')c =

Picture Pitch

16.str='The picture is very good.';index=strfind(str,'e')17.x=strmatch('pi',strvcat('pi''picture''pitch'))x =

18.(1)dec2bin([50])

ans =

110010(2)

Num=Str2num(['50']);dec2base(Num,3)

第三篇:语法分析上机实习题2014

注:

(一)为必做题,(二)和

(三)任选一题。

语法分析上机实习题

(一)对于如下的文法,试编写调试一个语法分析程序:

E → E+T | T

T → T*F | F

F → P^F| P

P→(E)| i

要求和提示:

(1)可选择一种你感兴趣的语法分析方法(LL(1)、算符优先、递归下降、SLR(1)等)作为编制语法分析程序的依据。

(2)对于所选定的分析方法,如有需要,应选择一种合适的数据结构,以构造

所给文法的机内表示。

(3)能进行分析过程模拟。如输入一个句子,能输出与句子对应的语法树,能

对语法树生成过程进行模拟;能够输出分析过程每一步符号栈的变化情况。

(二)First集和Follow集生成算法模拟

【问题描述】

设计一个由给定文法生成First集和Follow集并进行简化的算法动态模拟。(算法参见教材)

【基本要求】

动态模拟算法的基本功能是:

(1)输入一个文法G;

(2)输出由文法G构造FIRST集的算法;

(3)输出First集;

(4)输出由文法G构造FOLLOW集的算法;

(5)输出FOLLOW集。

E的first集

T的first集

F的first集+1*()i 1 11 1 1 1

【测试数据】

输入文法:

E->TE’

E’->+TE’|ε

T->FT’

T’->*FT’|ε F->(E)|i

(三)FirstVT

集和LastVT集生成算法模拟

【问题描述】

设计一个由给定文法生成FirstVT集和LastVT集的算法动态模拟。(算法参见教材P90——92FirstVT和LastVT的构造算法)

【基本要求】

动态模拟算法的基本功能是:(1)输入一个文法G;

(2)输出由文法G构造FIRSTVT集的算法;(3)输出FirstVT集;

E的firstVTT的firstVTF的firstVT

(4)输出由文法G构造LastVT集的算法;(5)输出LastVT集。

+1

*

()

i 1 1 11

1【测试数据】

输入文法: E->TE’

E’->+TE’|ε T->FT’

T’->*FT’|ε F->(E)|i

实习报告内容:

实验目的、实验要求、实验内容、采用的数据结构、算法描述、运行结果、调试情况、设计技巧及体会、源程序清单。

实验报告封面:

题目:

《编译原理》实验报告

学生姓名:_____________________________ 班级:_____________________________ 学号:_____________________________ 指导教师:_____________________________ 成绩:_____________________________

西安邮电大学计算机学院

年月日

第四篇:东北大学上机实验3

实验三顺序结构程序设计实验

一、实验目的

1.掌握顺序结构程序的基本设计方法; 2.掌握数据传送指令和算术运算指令的用法; 3.掌握逻辑操作指令和移位操作指令的用法; 4.掌握状态标志位操作指令的用法; 5.掌握简单的I/O功能调用。

二、实验要求

1.熟练掌握DEBUG中的各命令的使用方法;

2.学会利用系统功能调用,来实现键盘输入字符、显示字符的方法;

3.学会十进制数字与其对应的ASCII码相互转换的方法; 4.学会十六进制数字与其对应的ASCII码相互转换的方法; 5.学会利用查表的方法实现代码的转换。

三、实验内容

1.编写十六进制数的乘法程序。要求从键盘上输入两个一位十六进制数据,乘积存入SUM单元。

2.编写程序,求表达式5X+Y的值,要求:X、Y值从键盘输入,X、Y均为一位十六进制数据,将计算结果存入SUM单元。

四、解题思路

利用INT 21H的1号功能可以从键盘上输入数据, 通过通用寄存器保存中间结果,完成各项计算功能。将结果的ASCII码保存在内存单元和DL寄存器中,然后利用INT 21H的2号功能将其输出到屏幕上。输出到屏幕上一次只能显示4位二进制数,所以一个字节需要分两次才能显示出来。

五、编程实现 5.1 内容1 DSEG

SEGMENT HTAB

DB

'0123456789ABCDEF' SUM

DW

0,0 DSEG

ENDS CSEG

SEGMENT

ASSUME CS:CSEG,DS:DSEG

START: MOV

MOV

MOV AX,DSEG

;初始化DS寄存器 DS,AX AH,01H

;从键盘上输入一个数X(默认放入AL)

INT

SUB

MOV

MOV

MOV

INT

MOV

INT

SUB

MUL

MOV

MOV

MOV

MOV

MOV

INT

MOV

SHR

MOV

LEA

XLAT

MOV

MOV

INT

AND

MOV

XLAT

MOV

MOV

INT

MOV

INT CSEG

ENDS

END

21H AL,30H

BL,AL

DL,'*'

AH,02H

21H AH,01H

21H AL,30H

BL

SUM,AX

CH,AL

DH,AL DL,'='

AH,02H 21H CL,4 DH,CL

AL,DH

BX,HTAB

DL,AL

AH,02H 21H CH,0FH

AL,CH

DL,AL AH,02H 21H AH,4CH 21H START

;输入的数据ASIIC码翻译成十六进制;X放入到BL中

;规定要显示的符号必须在DL中;显示’*’

;从键盘输入第二个数Y(默认放入AL);输入的数据ASIIC码翻译成十六进制;AL*BL

保存数据到SUM中;利用CH和DH存放;规定要显示的符号必须在DL中 显示‘=’

;DH中保存了之前AL中的高四位;查表规定数据必须在AL中;利用查表方法显示;显示AL中的高四位

;CH中保存了之前AL中的低四位;查表规定数据必须在AL中;查表方法显示

;;

运行结果如下如图3-1

图3-1 5.2 内容2 DSEG HTAB SUM DSEG SEGMENT DB DW ENDS '0123456789ABCDEF' 0,0 CSEG SEGMENT

ASSUME CS:CSEG,DS:DSEG START: MOV

MOV

MOV

INT

SUB

MOV

MUL

MOV

MOV

MOV

INT

MOV

LEA

XLAT

MOV

MOV

INT

MOV

MOV

INT

MOV

INT

SUB

AX,DSEG DS,AX AH,01H 21H AL,30H BL,5 BL CX,AX DL,'*'

;BL中保存数据5;X*5默认保存到AX中;X*5保存在CX中

;屏幕上显示'*'前规定需要保存到DL中;显示’*’

;利用查表法输出5,之前必须放入到AL中;查表获取地址;查表转换

;屏幕显示数据5之前规定需要放到DL中;显示5

;屏幕显示’+’之前规定需要放到DL中;屏幕显示’+’;从键盘上输入数据Y

;从键盘上输入X,默认保存到AL中

AH,02H 21H AL,05H BX,HTAB

DL,AL AH,02H 21H DL,'+'

AH,02H 21H AH,01H 21H AL,30H

MOV

MOV

ADC

MOV

MOV

MOV

INT

MOV

MOV

MOV

SHR

MOV

LEA

XLAT

MOV

MOV

INT

AND

MOV

XLAT

MOV

MOV

INT

MOV

INT CSEG

ENDS BL,AL BH,00H CX,BX SUM,CX DL,'=' AH,02H 21H BH,CL CH,CL CL,4 BH,CL

;右移4位,即为原来结果的高4位;放到AL中,便于查表转换后显示出来;查表

;显示结果的高4位 AL,BH BX,HTAB DL,AL

;Y保存到BL寄存器中;实现5X+Y;保存结果

;屏幕显示‘=’之前规定需放入到DL寄存器中;显示’=’

;保存CL,因为下面指令SHR需用到CL寄存器;保存CL,因为下面指令SHR需用到CL寄存器

AH,02H 21H CH,0FH AL,CH

;原来结果低4位处理;查表转换;显示结果低4位 DL,AL AH,02H 21H AH,4CH 21H

END

START 运行结果如图3-2

图3-2

六、实验总结 6.1 心得体会

6.2 遇到的问题

实验过程中遇到的问题很多,我就挑典型的几个错误分享一下。1.实验内容1中,INT 21H会改变AL中的值,所以AL中的数据要在该语句之前保存;

2.实验内容2中,我刚刚开始输入Y时忘记写SUB AL,30H,后来运行结果屏幕显示的结果总是比实际结果大3,这个错误找了很久,给我印象深刻。

第五篇:VB上机考试习题以及答案

VB上机考试

1、利用随机函数产生25个100到999之间的整数,构成55的矩阵,输出该矩阵。Dim a(1 To 5, 1 To 5)Private Sub Form_Click()Randomize For i = 1 To 5 For j = 1 To 5 a(i, j)= Int(Rnd *(99910 + 1)+ 10)Print a;s = s + a Next i Print Avg = s / 25 Print Avg End Sub

3、在窗体上按下鼠标的右键,记录其坐标。

Private Sub Form_Load()Label1.BorderStyle = 1 Label1.Alignment = 2 End Sub

Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)If Button = 2 Then Label1.Caption = X & “,” & Y End If End Sub

4、利用随机函数产生25个10到99之间的整数,按从小到大的顺序显示。Dim a(1 To 25)Private Sub Form_Click()Cls For i = 1 To 25 a(i)= Int(Rnd *(991 For j = 1 To 251 + 1)+ 1)a(x)= a(x)+ 1 Next j For i = 1 To 6 Print i & “出现了” & a(i);“次” Next i

End Sub

6、在文本框中输入一些英语单词,统计空格的个数。

Dim n%, x As String, s% Private Sub Form_Click()n = Len(Text1.Text)x = Text1.Text For i = 1 To n If Mid(x, i, 1)= “ ” Then s = s + 1 Next i Print “共出现了” & s & “个空格” End Sub

7、编程计算下列公式的值,其中n(<10)为从键盘输入的正整数。S=1!+3!+5!+……+(2*n-1)!Private Sub Form_Click()n = Val(InputBox(“请输入一个不大于10的整数”))s = 0 For i = 1 To 2 * n2 * i1 a = a + 1 Print Str(a);Next j Print Next i End Sub

10、用For …Next语句编程,双击窗体后,在屏幕上显示如图:

Private Sub Form_DblClick()For i = 1 To 3 Print Tab(113 * i);For j = 1 To 5 Print x;Next j Print Next i End Sub

12、从文本框输入一个正整数,判断该数是否为素数。Dim a As Long Private Sub Form_Click()a = Val(Text1.Text)If a = 2 Then Tag = True ElseIf a Mod 2 = 0 Then Tag = False Else Tag = True For i = 3 To Sqr(a)Step 2 If a Mod i = 0 Then Tag = False: Exit For Next i End If If Tag = True Then Print a;“是素数” Else Print a;“不是素数” End If

End Sub

13、利用随机函数产生并显示10个3位数的正整数,找出其中的最大数。Option Explicit Dim i%, max%, loc% Dim a(1 To 10)As Integer Private Sub Form_Click()Randomize Form1.Cls For i = 1 To 10 a(i)= Int(Rnd *(9991000 + 1)+ 1000)Print a(i)Next i min = 9999 For i = 1 To 10 If a(i)< min Then min = a(i): loc = i Next i Print “最小的数是”;min Print “在数组中是第”;loc;“个数” End Sub

15、当按下鼠标左键时,窗体的背景色变为红色;松开鼠标左键时,窗体的背景色变为绿色。Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)If Button = 1 Then Form1.BackColor = vbRed

End Sub

Private Sub Form_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)If Button = 1 Then Form1.BackColor = vbGreen End Sub

16、编制一个时钟程序,如下图

:Option Explicit

Private Sub Form_Load()Label1.BackColor = vbWhite Label1.BorderStyle = 1 Label1.Alignment = 2 Timer1.Enabled = True Timer1.Interval = 1000 End Sub

Private Sub Timer1_Timer()Label1.Caption = Time End Sub

17、从键盘输入10个数,按输入的顺序和按输入顺序相反的顺序输出。Option Explicit Dim i% Dim a(1 To 10)As Single Private Sub Form_Click()For i = 1 To 10 a(i)= Val(InputBox(“请输入第” & i & “个数”))Print a(i);Next i Print For i = 10 To 1 Step-1 Print a(i);Next i

End Sub

18、计算圆面积的程序。程序运行时,单击窗体,然后在下图所示的输入框中输入圆的半径,即可在窗体上显示计算出的圆面积。

Option Explicit Dim r%, a As Single Const pi As Single = 3.14159 Private Sub Form_Click()r = Val(InputBox(“请输入圆半径” & vbCrLf & “(1-9):”, “输入”, 5))a = pi * r ^ 2 Print “半径为”;r;“的圆面积为”;a End Sub

19、编写一个时钟程序,当选择“24小时”时,以24小时的方式显示如A,当选择“12小时”时,以12小时的方式显示如B。

Private Sub Form_Load()Timer1.Interval = 1000 End Sub

Private Sub Timer1_Timer()Select Case True Case Option1.Value Label1.Caption = Time Case Option2.Value Label1.Caption = Format(Time, “HH:MM:SS AM/PM”)End Select End Sub 20、设计一个程序,用户界面如图所示。程序运行后,用户在文本框中输入一段文字,然后按需要单击选择框,用以改变文本的字体、字型、颜色以及大小。

Option Explicit

Private Sub Check1_Click()If Check1.Value = 1 Then Text1.FontName = “黑体” Else Text1.FontName = “宋体” End If End Sub

Private Sub Check2_Click()If Check2.Value = 1 Then Text1.FontUnderline = True Else Text1.FontUnderline = False End If End Sub

Private Sub Check3_Click()If Check3.Value = 1 Then Text1.FontSize = 20 Else

Text1.FontSize = 9 End If End Sub

Private Sub Check4_Click()If Check4.Value = 1 Then Text1.ForeColor = vbGreen Else Text1.ForeColor = vbBlack End If End Sub

Private Sub Command1_Click()Text1.Text = “" End Sub

Private Sub Command2_Click()End End Sub 20做出2个周期的正弦波形.Private Sub Form_Click()Dim i%, x#, y# Const pi As String = 3.1415926 Form1.Scale(-2 * pi, 1.2)-(2 * pi,-1.2)Form1.Line(-2 * pi, 0)-(2 * pi, 0)Form1.Line(0, 1.2)-(0,-1.2)For x =-2 * pi To 2 * pi Step 0.01

y = Sin(x)

Form1.PSet(x, y)Next x End Sub 21以窗体为中心,产生1000个半径颜色随机的同心圆.Private Sub Form_Click()For i = 1 To 1000

x = Form1.ScaleWidth / 2

y = Form1.ScaleHeight / 2

r = Int(Rnd * y)

c = RGB(255 * Rnd, 255 * Rnd, 255 * Rnd)

Form1.Circle(x, y), r, c Next End Sub 22.九九乘法表 Private Sub Form_Click()Dim i%, j% Form1.Caption = ”九九乘法表“ Print Tab(48);Caption Print Tab(48);”-------------“ For i = 1 To 9

For j = 1 To i

Print Tab((j-1)* 12 + 1);i;”*“;j;”=“;i * j;

Next j Print Next i End Sub 23求最大公约数和最小公倍数 Private Sub Command2_Click()Text1.Text = ”“ End Sub

Private Sub command1_Click()Dim m%, n%, r%, t% m = Val(Text1.Text)n = Val(Text2.Text)If m < n Then t = m: m = n: n = t t = m * n Do

r = m Mod n

m = n

n = r Loop Until r = 0 Text3.Caption = ”公约数:“ & m Text4.Caption = ”公倍数" & t / m End Sub 24.用随机函数产生50个两位数,保存于一个一维数组中,要求找出其中的最大值,最小值及所在位置.

下载上机习题3教案(范文模版)word格式文档
下载上机习题3教案(范文模版).doc
将本文档下载到自己电脑,方便修改和收藏,请勿使用迅雷等下载。
点此处下载文档

文档为doc格式


声明:本文内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:645879355@qq.com 进行举报,并提供相关证据,工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。

相关范文推荐

    文献检索上机实习题(一)

    《文献检索》上机实习题(一)注意事项: 写清班级、学号、姓名,每次上机结束,以书面形式交上机实习报告。 题目: 1、利用图书馆网站上的“书目查询” 查看我院图书馆收藏的2002年......

    2011级VB上机实习题

    一、用记事本新建一个文本文件,将本班的M名学生在本学期的N门考试课的成绩(要求用假想分数,并要求将自己的每门课的分数定在96分以上,放在第一列;而将别人的大多数课程的分数都定......

    VFP上机习题(附答案)

    VFP习题(红色部分为答案) 由于上机题和之前做的题一样,所以用WORK查找试题的关键字便可以省下手翻资料的时间@@^_^。查找快捷键:ctrl + F 粗鲁提示:不清楚这样算不算作弊行为,所以小......

    文献检索上机实习题(二)(最终5篇)

    《文献检索》上机实习题(二) 注意事项: 写清班级、学号、姓名,每次上机结束,以书面形式交上机实习报告。 1、在EBSCO(ASP/BSP)数据库中检索发表于2000年-2009年,题名中包含词组......

    ACCESS上机试题及答案3

    一、基本操作 (1)在考生文件夹下,"samp1.mdb"数据库文件中建立表"tTeacher",表结构如下。 (2)根据"tTeacher"表的结构,判断并设置主键。 (3)设置"工作时间"字段的有效性规则为只能输......

    SQL数据库上机练习3

    SQL数据库上机练习3 在C:盘根目录下用自己的名字加“_DB”建立一个文件夹。(例:“王平_DB” ) 一.(6分)在SQL Server Management Studio中建立满足如下要求的数据库: 1. 数据库名字......

    上机教案(五篇模版)

    天 津 机 电 职 业 技 术 学 院 教 师 备 课 纸 键盘指法练习(英文打字) 一、实习内容: 熟悉键盘键位的分布,掌握基本的英文打字方法,并在其基础上进行练习,将速度控制在120个单词......

    高频习题答案3

    第三章习题与解答 3-1 某谐振功率放大器,已知Vcc24V,输出功率Po5W,晶体管集电极电流中的直流分量Ic0250mA,输出电压Ucm22.5V,试求:直流电源输入功率P;集电极效率c;谐振回路谐振电......