第一篇:2011级VB上机实习题
一、用记事本新建一个文本文件,将本班的M名学生在本学期的N门考试课的成绩(要求用假想分数,并要求将自己的每门课的分数定在96分以上,放在第一列;而将别人的大多数课程的分数都定在96分以下)输入到这个文件中,建议按如下形式存放(注:20≤M≤50、5≤N≤8,下文以M=4,N=3为例):
学号姓名英语VB数学
1我自已969899
2李某919667
3王某755856
4赵某586777
二、将本学期的N门课程及其学分(16学时为1个学分)输入到另一个数据文件(文件类型同上题)中,建议如下列形式存放:
编号课程名称课程学分
1英语5.0
2vb程序设计4
3数学4.5三、请编写一个简单的学生成绩管理程序,要求完成以下功能:
1)根据以上两文件内容分别计算每个学生N门课的加权平均分(保留2位小数,4舍5入),按平均
分排列名次,平均分相同则名次并列,如第1、2、2、4、5、5、7…名。用VB创建一个数据文件,存放班级的成绩表,建议按以下形式存放。
学号姓名英语C程序设计数学平均成绩名次
1张某76898980.52
2李某91966778.23
3王某75585688.81
4赵某58677768.54
2)分别统计全班每门课的平均分,并计算各分数段(60分以下;60~69;70~79;80~89;90
分以上)的学生人数。用VB创建一个新的数据文件,在该文件中存放数据的格式如下: 范围.英语VB......>=9035.......80-891012....................................3)打印每名学生成绩条(并将结果存放到用VB创建的一个新的数据文件中)。
4)打印所有存在不及格课程学生的名单(含学号、不及格课程名称、课程的学分及成绩)。
5)打印优等生名单(学号、N门课成绩、平均分名次)
优等生条件:
a)平均分 90分
b)名次在本班位于前三名
c)平均分85分,并且有二门课的成绩都 95分
选做内容:打印每门课成绩分布图
说明:所有输出结果应写入用VB创建的文件中,格式要整齐,并有适当的文字说明。实习报告要求:应包括分析设计与说明、部分过程(函数)的源程序清单、程序调试过程中遇到的问题及解决方法,有待改善或改进的意见,对本次实习的意见与建议、收获等。其中原始数据及程序运行的结果应作为附录附于实习报告之后。
第二篇:VB上机考试习题以及答案
VB上机考试
1、利用随机函数产生25个100到999之间的整数,构成55的矩阵,输出该矩阵。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个两位数,保存于一个一维数组中,要求找出其中的最大值,最小值及所在位置.
第三篇:语法分析上机实习题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
实习报告内容:
实验目的、实验要求、实验内容、采用的数据结构、算法描述、运行结果、调试情况、设计技巧及体会、源程序清单。
实验报告封面:
题目:
《编译原理》实验报告
学生姓名:_____________________________ 班级:_____________________________ 学号:_____________________________ 指导教师:_____________________________ 成绩:_____________________________
西安邮电大学计算机学院
年月日
第四篇:vb上机心得体会
心得体会:
刚开始学习vb的时候,我就觉得大一的计算机基础根本不值一提,难度相去甚远。我问过很多以前的同学,他们都说vb是编程语言中最简单的,但是在这次上机实习过程中,我发现要完成学生成绩管理系统实在有很大难度。平时看课本的时候,觉得还能够理解,看得懂,然而“纸上得来终觉浅”,一旦自己调试程序,总会犯很多错误,如前面说的“文件未找到”“下标越界”等等,都是平时没有机会解决和一些曾经被自己忽视的问题。有时候,为了找到代码中错误或不符合要求的地方,我不得不一遍又一遍地仔细检查程序,甚至标点符号都不能放过。细节决定成败,一个小小的分号也会起着扭转乾坤的作用。
在实习之前,我妄想从网站上下载一个或者请论坛上的好友帮忙,后来我发现这条路走不通,他们从来都不给别人提供实质性的帮助,只是象征性地说:“不会问老师。”于是我打消了这个念头,开始自己动手做。
当我无数次调试总算读出文件的时候,那种高兴劲可想而知。我慢慢觉得,其实自己调试程序蛮有意思的。既弥补了在vb学习中的漏洞,还学到了新内容,积累了一定的实战经验,对以后的期末考试和等级考试起到了相当大的促进作用。
实习过程中,多亏指导老师帮助我找出错误的地方。如果不是他们的细心讲解,我很难完成这次实习任务。当然,我在编程方面还有很大不足,今后我定会加倍努力,为等级考试的顺利通过打下牢固的基础。
第五篇:文献检索上机实习题(一)
《文献检索》上机实习题(一)
注意事项:
写清班级、学号、姓名,每次上机结束,以书面形式交上机实习报告。
题目:
1、利用图书馆网站上的“书目查询” 查看我院图书馆收藏的2002年之后的《三国演义》有几种,分别记录书名、出版社和出版年代。
2、通过“书目查询”查找索取号为“I24/7”的图书,记录书名、责任者、出版社,并通过浏览图书馆网站上的《图书分类简表》,找到分类号“I24”代表的图书类别是什么。
3、登陆中国知网(CNKI):
账户名:dx0606密码:hbjgxy(也可直接点击“IP登录”)
从中国知网首页下载CAJ格式浏览器(CAJViewer浏览器]),利用搜索引擎搜索下载PDF格式阅读器(最常用的是Adobe Reader 阅读器),方便下载论文全文及阅读之用。
练习题:
(1)精确检索题名中包含“企业资源管理”的文献,记录检索结果条数,并记录其中任意一篇论文的相关信息,包括中文题名、作者、作者单位。
(2)精确检索著者为“吴敬琏”发表的文章,记录检索结果条数,并记录其中任意一篇文章的题名、文献来源和发表时间。
(3)在“中国优秀硕士学位论文全文数据库”中检索题名中包含“图书馆知识管理”的硕士学位论文,记录检索结果条数,并记录其中任意一篇学位论文的相关信息,包括中文题名、作者、作者单位、导师等。
(4)在 “中国博士学位论文全文数据库”检索论文题名中包含“建筑”的天津大学的博士论文。记录结果条数,并记录其中一篇的论文题名、作者、导师姓名及学科专业名称。
(5)精确检索2009年题名中包含“建筑工程”的会议论文,记录检索结果条数,并记录其中任意一篇学位论文的相关信息,包括中文题名、作者、作者单位、会议名称、会议地点等。
(6)在“中国重要报纸全文数据库”中检索关于“上海世博会”的新闻报道,记录时间最新一篇的新闻标题、刊登报纸、发表时间、版号。
(7)在“中国专利数据库”中精确检索关键词中包含“电子计算机”的专利,记录检索结果条数,并记录其中任意一项专利的专利名称、专利权人等。
要求:下载本题检索出的任意一篇论文的两种格式文件,分别使用CAJ阅读器和PDF阅读器打开,体会各自功能。