“水工鳥”通过精心收集,向本站投稿了8篇4月全国计算机等级考试二级visual Basic笔试试,下面小编给大家整理后的4月全国计算机等级考试二级visual Basic笔试试,供大家阅读参考。

篇1:4月全国计算机等级考试二级visual Basic笔试试
一、选择题((1)一(20)每小题2分,(21)一(30)每小题3分,共30题,70分)
下列各题a)、b)、c)、d)四个选项中,只有一个选项是正确的,请将正确选项涂
在答题卡的相应位置上,答在试卷上不得分。
(1)以下不能在“工程资源管理器”窗口中列出的文件类型是
a).bas b).res c).fnn d).ocx
(2)以下关于窗体的描述中,错误的是
a)执行unloadfoml语句后,窗体fonnl消失,但仍在内存中
b)窗体的ioad事件在加载窗体时发生
c)当窗体的enabled属性为false时,通过鼠标和键盘对窗体的操作都被禁止
d)窗体的height、width属性用于设置窗体的高和宽
(3)下列可作为v2sualbasic变量名的是
a)a#a b)4a c)? xy d)consta
(4)设有如下的记录类型
type student
numberas string
name as string
age as integer
end type
则正确引用该记录类型变量的代码是
a) student.name=”张红” b) dim as student
s.name=”张红”
c) dim s as type student d) dim s as type
s.name=”张红” s.dame=”张红”
(5)函数string(n,“str”)的功能是
a)把数值型数据转换为字符串
b)返回由n个字符组成的字符串
c)从字符串中取出n个字符
d)从字符串中第n个字符的位置开始取子字符串
(6)将数学表达式cos2(a+b)+5e2写成visual basic的表达式,其正确的形式是
a)cos(a+b)a2十5。exp(2) b)cos^2(a+b)+5*exp(2)
c)cos(a+b)^2十5*ln(2) d)cos^2(a+b)+5*ln(2)
(7)在窗体上画一个命令按钮,名称为commandl。单击命令按钮时,执行如下事件过
程:
prlvate sub commandl—c1icko
a$=“software and hardware”
b(a$,8)
c$=mid(a$,1,8)
msgbox a$,,b$,c$,1
end sub
则在弹出的信息框的标题栏中显示的信息是
a)software and hardware b)software c)hardwafe d)1
(8)执行如下语句:
a=inutbox(”today”,”tomorrow,”yesterday”,,,“day before yesterday”,5)
将显示一个输入对话框,在对话框的输入区中显示的信息是
a)today b)tomorrow c)yesterday d)day before yesterday
(9)表示滚动条控件取值范围最大值的属性是
a)max b)largechange c)value d)max—min
(10)在窗体上画一个名称为listl的列表框,一个名称为labell的标签。列表框中显示
若干城市的名称。当单击列表框中的某个城市名时,在标签中显示选中城市的名称。
下列能正确实现上述功能的程序是
a) private sub listl_click b)private sub listl_c1ick()
labell.caption=list1.listlndex labell.nanle=listl.listindex
end sub .end sub
程序运行后,如果单击命令按钮,则在窗体上显示的内容是
a)空白 b)错误提示 c)北京 d)上海
11、在窗体上画一个名称为command1的命令按钮,然后编写如下事件过程:
private sub command1click()
x=0
n=inputbox(″″)
for i=1 to n
for j=1 to i
x=x+1
next j
next i
print x
end sub
程序运行后,单击命令按钮,如果输入3,则在窗体上显示的内容是()
a、3 b、4 c、5 d、6
12、以下关于菜单的叙述中,错误的是()
a、在程序运行过程中可以增加或减少菜单项
b、如果把一个菜单项的enabled属性设置为false,则可删除该菜单项
c、弹出式菜单在菜单编辑器中设计
d、利用控件数组可以实现菜单项的增加或减少
13在窗体上画三个单选按钮,组成一个名为chkoption的控件数组。用于标识各个控件数组元素的参数是()
a、tag b、index c、listindex d、name
14在窗体上画一个命令按钮,名称为command1,然后编写如下事件过程:
option base 0
private sub command1click()
dim city as variant
city=array(″北京″,″上海″,″天津″,″重庆″)
print city1
end sub
程序运行后,如果单击命令按钮,则在窗体上显示的内容是()
a、空白 b、错误提示 c、北京 d、上海
15、假定有以下函数过程:
function fun(s as string) as string
dim s1 as string
for i=1 to len(s)
s1=ucase(mid(s,i,1))+s1
next i
fun=s1
end function
在窗体上画一个命令按钮,然后编写如下事件过程:
private sub command1click()
dim str1 as string,str2 as string
str1=inputbox(″请输入一个字符串″)
str2=fun(str1)
print str2
end sub
程序运行后,单击命令按钮,如果在输入对话框中输入字符串“abcdefg”,则单击“确定”按钮后在窗体上的输出结果为()
a、abcdefg b、abcdefg c、gfedcba d、gfedcba
(16)设有语句
open “c:test.dat” for output as#1
则以下错误的叙述是
a)该语句打开c盘根目录下一个己存在的文件test.dat
b)该语句在c盘根目录下建立一个名为test.dat的文件
c)该语句建立的文件的文件号为1
d)执行该语句后,就可以通过print#语句向文件test.dat中写入信息
(17)以下叙述中错误的是
a)用shell函数可以调用能够在windows下运行的应用程序
b)用shell函数可以调用可执行文件,也可以调用visualbasic的内部函数
c)调用shell函数的格式应为:<变量名>=shell(……)
d)用shell函数不能执行dos命令
(18)以下关于过程及过程参数的描述中,错误的是
a)过程的参数可以是控件名称
b)用数组作为过程的参数时,使用的是“传地址”方式
c)只有函数过程能够将过程中处理的信息传回到调用的程序中
d)窗体可以作为过程的参数
(19)在窗体上画一个名称为txta的文本框,然后编写如下的事件过程:
private sub txta_keypress(keyascii as integer)
end sub
若焦点位于文本框中,则能够触发keypress事件的操作是
a)单击鼠标 b)双击文本框
c)鼠标滑过文本框 d)按下键盘上的某个键
(20)目录列表框的path属性的作用是
a)显示当前驱动器或指定驱动器上的路径
b)显示当前驱动器或指定驱动器上的某目录下的文件名
c)显示根目录下的文件名
d)只显示当前路径下的文件
(21)假定有如下事件过程:
private sub form_mousedown(button as integer,shift as integer, x as single,y as
single)
if button=2 then
popupmenu popform
end if
end sub
则以下描述中错误的是
a)该过程的功能是弹出一个菜单
b)popform 是在菜单编辑器中定义的弹出式菜单的名称
c)参数x、y指明鼠标的当前位置
d)button=2 表示按下的是鼠标左键
(22)以下能够正确计算n!的程序是
a) private sub commandl_click()
n=5:x=1
do
x=x*1
i=i十1
loop while i<n
print x
end sub
b) private sub commandl_click()
n=5: x=1:i=1
do
x=x*1
i=i十1
loop while i<n
print x
end sub
c)private sub commandl_click()
n=5:x=1:i=1
do
x=x*1
i=i十1
loop while i<=n
print x
end sub
d)private sub commandl_c1ick()
n=5:x=1:i=1
do
x=x*l
i=i十1
loop while i>n
print x
end sub
(23)在窗体上画一个名称为commandl的命令按钮,再画两个名称分别为labell、label2
的标签,然后编写如下程序代码:
private x as integer
private sub commandl—click()
x=5:y=3
call proc(x,y)
labell.caption=x
label2.caption=y
end sub
private sub proc(byval a as integer,byval b as hteger)
x=a* a
y=b十b
end sub
程序运行后,单击命令按钮,则两个标签中显示的内容分别是
a)5和3 b)25和3 c)25和6 d)5和6
(24)在窗体上画一个名称为commandl的命令按钮,一个名称为labell的标签,然后
编写如下事件过程:
private sub commandl_c1ick()
s=0
for i=1 t0 15
x=2*i一1
1f x mod 3=0 then s=s十1
nexti
labell.caption=s
end sub
程序运行后,单击命令按钮,则标签中显示的内容是
a)1 b)5 c)27 d)45
(25)在窗体上画一个名称为commandl的命令按钮和三个名称分别为labell、label2、
label3的标签,然后编写如下代码:
private x as integer
private sub command1_c1ick()
static y as integer
dimz as integer
n=10
z=n十z
y=y十z
x=x十z
labell.caption=x
label2.caption=y
label3.caption=z
end sub
运行程序,连续三次单击命令按钮后,则三个标签中显示的内容分别是
a)10 10 10 b)30 30 30 c)30 30 10 d)10 30 30
(26)设在窗体上有一个名称为commandl的命令按钮,并有以下事件过程:
private sub commandl_c1ick()
static b as variant
b=array(1,3,5,7,9)
end sub
此过程的功能是把数组b中的5个数逆序存放(即排列为9,7,5,3,1)。为实现此功
能,省略号处的程序段应该是
a)for i=0 to 5-1\2
tmp=b(i)
b(i)=b(5-i-1)
b(5-i-1)=tmp
next
b)for i=0 to 5
tmp=b(i)
b(i)=b(5-i-1)
b(5-i-1)=tmp
next
c) for i=0 t0 5\2
tmp=b(i)
b(i)=b(5-i-1)
b(5-i-1);tmp
next
d)for i=1 t0 5\2
tmp=b(i)
b(i)=b(5一i一1)
b(5—i—1)=tmp
next
(27)在窗体上画一个名称为drivel的驱动器列表框,一个名称为dirl的目录列表框,
一个名称为filel的文件列表框,两个名称分别为labell、label2,标题分别为空白
和“共有文件”的标签。编写程序,使得驱动器列表框与目录列表框、目录列表框
与文件列表框同步变化,并且在标签labell中显示当前文件夹中文件的数量。如图
所示。
能够正确实现上述功能的程序是
a) private sub dirl_change() b)private sub dir1_change()
filel.path=dir1.path filel.path=dir1.path
end sub end sub
private sub drivel_change() private sub drive1_change()
dirl.path=drivel.drive dirl.path=drivel.drive
labell.caption=filel.listcount labell.captlon=file1.list
end sub end sub
c)private sub dirl_change() d) private sub dirl_change()
filel.path=dirl.path filel.path=dir1.path
labell.caption=filel.listcount labell.caption=filel.list
end sub end sub
private sub drivel_change() private sub drivel_change()
dirl.path=drivel.drlve dir1.path=drivel.drlve
labell.caption=filel.listcount labell.caption=filel.list
end sub end sub
(28)一个工程中包含两个名称分别为forml、form2的窗体,一个名称为mdlfunc的标准
模块。假定在forml、form2和mdlfunc中分别建立了自定义过程,其定义格式为:
forml中定义的过程:
private sub frmfunctionl()
end sub
form2中定义的过程:
public sub frmffunction2()
end sub
mdlfunc中定义的过程:
public sub mdlfunction()
end sub
在调用上述过程的程序中,如果不指明窗体或模块的名称,则以下叙述中正确的是
a)上述三个过程都可以在工程中的任何窗体或模块中被调用
b)frmfunction2和mdlfunction过程能够在工程中各个窗体或模块中被调用
c)上述三个过程都只能在各自被定义的模块中调用
d)只有mdlfunction过程能够被工程中各个窗体或模块调用
(29)窗体上有两个名称分别为textl、text2的文本框,一个名称为commandl的命令
按钮。运行后的窗体外观如图所示。
设有如下的类型声明
type person
name as string*8
major as string*20
end type
当单击“保存”按钮时,将两个文本框中的内容写入一个随机文件test29.dat中。设
文本框中的数据已正确地赋值给person类型的变量p。则能够正确地把数据写入文件
的程序段是
a)0pen”c:\test29.dat“ for random as#1
put #1,1,p
close #1
b)open ”c:\test29.dat“ for random as #1
get#1,1,p
c10se #1
c)open ”c\test29.dat“ for random as #1 len=len(p)
put #1,1,p
close #1
d)open ”c:\test29.dat “ for random as #1=len(p)
get #1,1,p
close #1
(30)在窗体上画一个名称为commondialogl的通用对话框,一个名称为commandl的
命令按钮。要求单击命令按钮时,打开一个保存文件的通用对话框。该窗口的标题
为”save“,缺省文件名为“savefile”,在“文件类型”栏中显示*.txt。则能够满足
上述要求的程序是
a)private sub command_c1ick()
commondialogl.filename=“savefile”
commondialogl.filter=”all files|*.*|(*.txt)|*.txt|(*.doc).|*.doc“
commondialogl.filterindex=2
commondialogl.dial0g.title=”save“
commondialogl.action=2
end sub
b)private sub commandl_click()
commondialogl.filename=”savefile“
commondialogl.filter=”a11 files|*.*|(*.txt)|*.txt|*.doc|*.doc“
c0mmondialogl.filterindex=1
commondialogl.dialogtitle=”save“
commondialogl.action=2
end sub
c)private sub cmmandl_c1ick()
commondialogl.filename=”save“
commondialogl.filter=”a11files|*.*|(*.txt)|*.txt|(*.doc)|*.doc“
commondialogl.filterindex=2
c0mmondialogl.dialogtitle=”savefile“
commondialogl.action=2
end sub
d)private sub commandl_c1ick()
commondialogl.filename=”savefile“
commondialogl.filter=”all files|*.*|(*.txt)|*.txt|(*.doc)|*.doc“
commondialogl.filterindex=1
commondialogl.dialogtitle=“save”
commondialogl.action=1
end sub
二、填空题(每空2分,共30分)
请将每空的正确答案写在答题卡[1]一[15序号的横线上,答在试卷上不得分。
(1)visual basic中有一种控件组合了文本框和列表框的特性,这种控件是________
(2)visual basic提供的对数据文件的三种访问方式为随机访问方式_____和二进制访问
方式。
(3)执行下面的程序段后,变量s的值为_______。
s=5
for i =2.6 to 4.9 step 0.6
s=s十1
next i
(4)为了在运行时把d:pic文件夹下的图形文件a.jpg装入图片框picturel,所使用的语
句为_______。
(5)计时器控件能有规律的以一定时间间隔触发_______事件,并执行该事件过程中的
程序代码。
(6)以下程序的功能是:生成20个200到300之间的随机整数,输出其中能被5整除的
数并求出它们的和。请填空。
private sub commandl_c1ick()
fori=1to 20
x=int(____________*200+100)
if_______[7] =0 then
print x
s=s+_________ [8]
end if
next i
print “sum=”:s
end sub
(7)设有如下程序
private sub form_click()
dim a as integer,b as integer
a=20:b=50
pla,b
p2a,b
p3a,b
print”a=“;a,”b=“;b
end sub
sub pl(x as integer,byval y as integer)
x=x+10
v=v+20
end sub
sub p2(byval x as integer, y as integer)
x=x+10
y=y+20
end sub
sub p3(byvalx as integer, byval y as integer)
x=x+10
y=y+20
end sub
该程序运行后,单击窗体,则在窗体上显示的内容是:a=______和b=______。
(8)在窗体上画一个名称为commandl的命令按钮,编写如下事件过程
private sub commandl_c1ick()
dim as string
a=_____[11]
for i =1 to 5
print space(6—i);mid$3(a,6—i,2*i—1)
nexti
end sub
程序运行后,单击命令按钮,要求窗体上显示的输出结果为
456
34567
2345678
123456789
请填空。
(9)在窗体上画一个名称为combo1的组合框,画两个名称分别label1和label2及caption
属性分别为“城市名称”和空白的标签。程序运行后,当在组合框中输入一个新项
后按回车键(ascii码为13)时,如果输入的项在组合框的列表中不存在,则自动
添加到组合框的列表中,并在label2中给出提示“已成功添加输入项”如图所示;
如果存在,则在label2中给出提示“输入项已在组合框中”。请在[12]、[13]和
[14]处将程序补充完整。
private sub combol_________<12> (keyascii as integer)
1f keyascii=13 then
fori=0 to combo1.listcount—1
1f combo1.text=______ [13] ihen
label2.caption=”输入项己在组合框中”
exit sub
end lf
next i
label2.caption=“已成功添加输入项”
combo1.______ [14] combo1.text
end lf
end sub
(10)设有如下程序
private sub search(a()as variant,byval key as variant,index%)
dim i%
fori=lbound(a)to ubound(a)
if key=a(i) then
index=i
exit sub
end if
next i
index=-1
end sub
private sub form_load()
show
dtm b() as variant
dim n as integer
b=array(1,3,5,7,9,11,13,15)
call search(b,11,n)
printt n
end sub
程序运行后,输出结果是________。
篇2:4月全国计算机等级考试二级Visual FoxPro笔试试
一、选择题( (1)~(35) 每题2分,共70分)
下列各题a) 、b) 、c) 、d) 四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。
(1) 数据库(db)、数据库系统(dbs)、数据库管理系统(dbms)三者之间的关系是
a) dbs包括db和dbms b) dbms包括db和dbs
c) db包括dbs和dbms d) dbs就是db,也就是dbms
(2) 在visual foxpro中“表”是指
a) 报表 b) 关系 c) 表格 d) 表单
(3) 数据库系统与文件系统的最主要区别是
a) 数据库系统复杂,而文件系统简单
b) 文件系统不能解决数据冗余和数据独立性问题,而数据库系统可以解决
c) 文件系统只能管理程序文件,而数据库系统能够管理各种类型的文件
d) 文件系统管理的数据量较小,而数据库系统可以管理庞大的数据量
(4) 在当前表单的label1控件中显示系统时间的语句是
a) thisform.label1.caption=time()
b) thisform.label1.value=time()
c) thisform.label1.text=time()
d) thisform.label1.control=time()
(5) 在关系模型中,为了实现“关系中不允许出现相同元组”的约束应使用
a) 临时关键字 b) 主关键字
c) 外部关键字 d) 索引关键字
(6) 在visual foxpro中创建项目,系统将建立一个项目文件,项目文件的扩展名是
a)pro b) prj c) pjx d) itm
(7) 在visual foxpro的项目管理器中不包括的选项卡是
a) 数据 b) 文档 c) 类 d) 表单
(8)在visual foxpro 中说明数组的命令是
a) dimension和array b) declare和array
c) dimension和declare d) 只有dimension
(9) 数据库表可以设置字段有效性规则,字段有效性规则属于
a) 实体完整性范畴 b) 参照完整性范畴
c) 数据一致性范畴 d) 域完整性范畴
(10) 在visual foxpro中字段的数据类型不可以指定为
a) 日期型 b) 时间型
c) 通用型 d) 备注型
(11) 用命令“index on 姓名 tag index_name unique”建立索引,其索引类型是
a) 主索引 b) 候选索引 c) 普通索引 d) 惟一索引
(12) 以下关于主索引和侯选索引的叙述正确的是
a) 主索引和侯选索引都能保证表记录的惟一性
b) 主索引和侯选索引都可以建立在数据库表和自由表上
c) 主索引可以保证表记录的惟一性,而侯选索引不能
d) 主索引和侯选索引是相同的概念
(13) 查询订购单号首字符是“p”的订单信息,应该使用命令
a) select * from 订单 where head(订购单号,1)=“p”
b) select * from 订单 where left(订购单号,1)= “p”
c) select * from 订单 where “p”
d) select * from 订单 where right(订购单号,1)= “p”
(14) 有如下赋值语句,结果为“大家好”的表达式是
a=“你好”
b=“大家”
a) b+at(a,1) b) b+right(a,1)
c) b+ left(a,3,4) d) b+right(a,2)
(15) 数据库表的字段可以定义默认值,默认值是
a) 逻辑表达式 b) 字符表达式
c) 数值表达式 d) 前三种都可能
(16) 数据库的字段可以定义规则,规则是
a) 逻辑表达式 b) 字符表达式
c) 数值表达式 d) 前三种说法都不对
(17) 在sql语句中,与表达式“供应商名 like” %北京%“”功能相同的表达式是
a) left(供应商名,4)=“北京” b) “北京”
c) 供应商名in“%北京%” d) at(供应商名,“北京”)
(18) 使数据库表变为自由表的命令是
a) drop table b) remove table
c) free table d) release table
(19) 在visual foxpro的查询设计器中“筛选”选项卡对应的sql短语是
a) where b) join c) set d) order by
(20) sql支持集合的并运算,在visual foxpro中sql并运算的运算符是
a) plus b) union c) + d) u
(21) 根据“职工”项目文件生成emp_sys.exe应用程序的命令是
a)build exe emp_sys from 职工
b)duild app emp_sys.exe from 职工
c)link exe emp_sys from 职工
d)link app emp_sys from 职工
(22) 如果指定参照完整性的删除规则为“级联”,则当删除父表中的记录时
a)系统自动备份父表中被删除记录到一个新表中
b)若字表中有相关记录,则禁止删除父表中记录
c)会自动删除子表中所有相关记录
d)不作参照完整性检查,删除父表记录与子表无关
(23) 以下关于关系的说法正确的是
a) 列的次序非常重要 b) 当需要索引时列的次序非常重要
c) 列的次序无关紧要 d) 关键字必须指定为第一列
(24) 为了在报表中打印当前时间,这时应该插入一个
a) 表达式控件 b) 域控件
c) 标签控件 d) 文件控件
(25) 在visual foxpro中释放和关闭表单的方法是
a) release b) close c) delete d) drop
(26) 为了从用户菜单返回到系统菜单应该使用命令
a) set default system b) set menu to default
c) set system to default d) set sysmenu to default
(27) 在表单中为表格控件指定数据源的属性是
a) datasource b) recordsource
c) datafrom d) recordfrom
(28) 以下关于表单数据环境叙述错误的是
a) 可以向表单数据环境设计器中添加表或视图
b) 可以从表单数据环境设计器中移出表或视图
c) 可以在表单数据环境设计器中设置表之间的关系
d) 不可以在表单数据环境设计器中设置表之间的关系
(29) 以下关于查询描述正确的是
a) 不能根据自由表建立查询 b) 只能根据自由表建立查询
c) 只能根据数据库表建立查询 d) 可以根据数据库表和自由表建立查询
第(30)-(35)题使用如下三个表:
部门.dbf:部门号c(8),部门名c(12),负责人c(6),电话c(16)
职工.dbf:部门号c(8),职工号c(10),姓名c(8),性别c(2),出生日期d
工资.dbf:职工号c(10),基本工资n(8.2),津贴n(8.2),奖金n(8.2),扣除n(8.2)
(30) 查询职工实发工资的正确命令是
a) select 姓名,(基本工资+津贴+奖金-扣除)as 实发工资 from 工资
b) select 姓名,(基本工资+津贴+奖金-扣除)as 实发工资 from 工资;
where 职工.职工号=工资.职工号
c) select 姓名,(基本工资+津贴+奖金-扣除)as 实发工资;
from 工资,职工 where 职工.职工号=工资.职工号
d) select 姓名,(基本工资+津贴+奖金-扣除)as 实发工资;
from 工资 join 职工 where 职工.职工号=工资. 职工号
(31) 查询1962年10月27日出生的职工信息的正确命令是
a) select*from 职工 where 出生日期={^1962-10-27}
b) select*from 职工 where 出生日期=1962-10-27
c) select*from 职工 where 出生日期=“1962-10-27”
d) select*from 职工 where 出生日期=(“1962-10-27”)
(32) 查询每个部门年龄最长者的信息,要求得到的信息包括部门名和最长者的出生日期。 正确的命令是
a) select 部门名,min(出生日期)from 部门 join 职工;
on 部门.部门号=职工.部门号 group by 部门名
b) select 部门名,max(出生日期)from 部门 join 职工;
on 部门.部门号=职工.部门号 group by 部门名
c) select 部门名,min(出生日期)from 部门 join 职工;
where 部门.部门号=职工.部门号 group by 部门名
d) select 部门名,max(出生日期)from 部门 join 职工;
where 部门.部门号=职工.部门号 group by 部门名
(33) 查询有10名以上(含10名)职工的部门信息(部门名和职工人数),并按职工人数降序排列。正确的命令是
a) select 部门名,count(职工号)as 职工人数;
from 部门,职工 where 部门.部门号=职工.部门号;
group by 部门名 having count(*)>=10;
order by count(职工号)asc
b) select 部门名,count(职工号)as 职工人数;
from 部门,职工 where 部门.部门号=职工.部门号;
group by 部门名 having count(*)>=10;
order by count(职工号)desc
c) select 部门名,count(职工号)as 职工人数;
from 部门,职工where 部门.部门号=职工.部门号;
group by 部门名 having count(*)>=10;
order by 职工人数 asc
d) select 部门名,count(职工号)as 职工人数;
from 部门,职工where 部门.部门号=职工.部门号;
group by 部门名 having count(*)>=10;
order by 职工人数 desc
(34) 查询所有目前年龄在35岁以上(不含35岁)的职工信息(姓名、性别和年龄),正确的命令是
a) select 姓名,性别,year(date())-year(出生日期) 年龄 from 职工;
where 年龄>35
b) select 姓名,性别,year(date())-year(出生日期) 年龄 from 职工;
where year(出生日期)>35
c) select 姓名,性别,year(date())-year(出生日期) 年龄 from 职工;
where year(date())-year(出生日期)>35
d) select 姓名,性别,年龄=year(date())-year(出生日期)from 职工;
where year(date())-year(出生日期)>35
(35) 为“工资”表增加一个“实发工资”字段的正确命令是
a) modify table 工资 add column 实发工资 n(9,2)
b) modify table 工资 add field 实发工资 n(9,2)
c) alter table 工资 add column 实发工资 n(9,2)
d) alter table 工资 add field 实发工资 n(9,2)
二、填空题( 每空2分,共30分)
请将每一个空的正确答案写在答题卡【1】~【15】序号的横线上,答在试卷上不得分。
注意:以命令关键字填空的必须拼写完整
(1)使用数据库设计器为两个表建立联系,首先应在父表中建立【1】 索引,在子表中建立【2】索引。
(2) 常量 .n.表示的是【3】型的数据。
(3) 在visual foxpro中参数传递的方式有两中,一种是按值传递,另一种是按引用传递,
将参数设置为按引用传递的语句是:set udfparms 【4】
(4) 运行表单时,load事件是在init事件之【5】被引发。
(5) 如下程序的输出结果是【6】.
i=1
do while i<10
i=i+2
enddo
?i
第(6)~(9)题使用如下三个表
零件.dbf:零件号c(2),零件名称c(10),单价n(10),规格c(8)
使用零件.dbf:项目号c(2),零件号c(2),数量i
项目.dbf:项目号c(2),项目名称c(20),项目负责人c(10),电话c(20)
(6) 为“数量”字段增加有效性规则:数量>0,应该使用的sql语句是
【7】table使用零件【8】数量set【9】数量>0
(7) 查询与项目“s1”(项目号)所使用的任意一个零件相同的项目号、项目名称、零件号和零件名称,使用的sql语句是
select 项目.项目号,项目名称,使用零件.零件号,零件名称;
from 项目,使用零件,零件where 项目.项目号=使用零件.项目号【10】;
使用零件.零件号=零件.零件号 and 使用零件.零件号【11】;
(select 零件号 from 使用零件 where 使用零件.项目号=‘s1’)
(8) 建立一个由零件名称、数量、项目号、项目名称字段构成的视图,视图中只包含项目号为“s2”的数据,应该使用的sql语句是
create view item_view 【12】;
select 零件.零件名称,使用零件.数量,使用零件.项目号,项目.项目名称;
from 零件 inner join 使用零件;
inner join 【13】;
on 使用零件.项目号=项目.项目号;
on 零件.零件号=使用零件.零件号;
where 项目.项目号=‘s2’
(9) 从上一题建立的视图中查询使用数量最多的2个零件的信息,应该使用的sql语句是
select* 【14】 2 from item_view 【15】 数量desc
篇3:4月全国计算机等级考试二级FOXBASE语言程序设计

一、选择题((1)~(40)每小题1分,(41)~(50)每小题2分,共60分)
下列各题 a) 、b)、c)、d)四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。
(1) 用8位无符号二进制数能表示的最大十进制数为 c
a) 127 b) 128 c) 255 d) 256
(2) 在64位高档微机中,一个字长所占的二进制位数为d
a) 8 b) 16 c) 32 d) 64
(3) 在windows环境下,为了复制一个对象,在用鼠标拖动该对象时应同时按住 d
a) alt键 b)esc键 c)shift键 d)ctrl键
(4) 在windows菜单中,暗淡(灰色)的命令项表示该命令a
a) 暂时不能用 b) 正在执行 c) 包含下一层菜单 d) 包含对话框
(5) 在dos环境下,为了得到type命令的帮助信息,正确的dos命令为 d
a) type b) type/h c) type/* d) type/?
(6) 下列选项中,能作为合法dos文件名的是 b
a) anp/a.dat b) abccom c) ecd.basic d) xy+z.txt
(7) 下列叙述中正确的是 a
a) 在windows环境下,最大化的窗口是不能移动的
b) 在windows环境下,应用程序窗口最小化后,该应用程序暂停执行
c) 在windows环境下,只有最小化的窗口才能关闭
d) 在windows环境下,不能关闭最大化的窗口
(8) 在windows环境下,工具栏中的复制按钮是c
a) 打印机图标 b) 剪刀标志 c) 复制标志 d) 粘贴标志
9) 在windows98环境下,若要将整个屏幕上显示的内容存入剪贴板,可以按d
a) ctrl+printscreen键 b) alt+printscree键
c) shift+printscreen键 d) printscreen键
(10) 目前,计算机病毒扩散最快的途径是b
a) 通过软件复制 b) 通过网络传播
c) 通过磁盘考贝 d) 运行游戏软件
(11) foxbase是一种 b
a)数据库 b)数据库管理系统
c)数据库系统 d)数据库应用程序
(12) 数据库文件book.dbf中包含memo型字段,下列描述中错误的是
a) 若删除了备注文件book.dbt,则该数据库文件将无法打开 b
b) 若删除了该数据库文件,则备注文件book.dbt自动被删除
c) 若打开该数据库文件,则备注文件book.dbt自动打开
d) 该数据库文件的所有备注型字段的内容都存放在同一个备注文件中
(13) 在foxbase中,下列数据中属于常量的是b
a) top b) .y. c) t d) 12/11/
(14) 在foxbase中,可以用type命令显示其内容的文件类型为c
a).mem b) .dbt c) .prg d) .fox
(15) 不能关闭当前工作区中索引文件的命令为 d
a)set index to b)close index
c)close all d)set order to
(16) 在相关数据库文件存在或已打开的情况下,下列命令中能正确执行的是
a) seek for 基本工>1000 b) @10,12 say”a的值为:“,20
c) delete zgjk.dbf d) count rest
(17) 当范围和条件短语同时省略时,仅作用于当前记录的命令是
a)count b)delete c)list d)change
(18) 在操作过程中,可以进入人机交互工作方式的命令为
a) append blank b) browse c) replace d)delete all
(19) 不能向数据库文件增加记录的命令是
a) browse b) append c) insert d) replace
(20) 表达式int(-25.8)的值为
a) -25 b) -26 c) 25 d)26
(21) 下列对browse命令描述正确的是
a) 只能浏览数据库文件,不能修改记录内容
b) 能浏览数据库文件,但不能增加或删除记录
c) 能浏览数据库文件,同时也能增加或删除记录
d) 不仅能浏览数据库文件,还能修改数据库的结构
(22) 在foxbase中,seek命令和locate命令都可以用于查找记录,但在使用上有所不同。以下表述正确的是
a) seek命令可以一次查找到全部记录,locate命令一次只能找到一条记录
b) seek命令需要打开相应索引文件才能使用,locate命令不需要索引文件
c) seek命令只能查找字符串,locate命令可以查找任何类型字段
d) seek命令可以和continue命令联合使用,而locate命令不可以
(23) 以下关于total命令的表述中,正确的是
a) 命令的执行结果不生成另一个数据库文件
b) 所操作的数据库文件不必按关键字段索引或排序
c) 命令中的关键字段必须是数值型字段
d) 只能对数据型字段进行汇总
(24) 有如下序列(”□“表示空格)
store ”abc□□“ to x
store ”xyz“+x to y
store trim(y)-”lmn“ to z
?len(z)
执行上述命令之后,屏幕显示的值是
a) xyzabclmn b) xyzabclmn□□ c) 11 d) 9
(25) 使用display命令时,若范围短语为all或rest,执行该命令后,记录指针指向
a) 首记录 b) 末记录 c) 首记录的前面 d) 末记录的后面
(26) 在foxbase中,已经在多个工作区中打开了若干个数据库。要显示当前工作区的区号,应使用命令
a) select b) ?select c) select d) ?select
(27) 数据库文件已经打开,当前记录中姓名字段的值是”张敏“。执行以下命令序列:
姓名=”李卫星“
?姓名
屏幕显示的结果是
a) 张敏 b) 李卫星 c) 张敏李卫星 d) 李卫星张敏
(28) 在foxbase数据库中,记录是由字段值构成的数据序列,记录长度要比各字段长度之和多一个字节,这个字节用来存放
a) 记录的分隔标记 b) 记录的序号
c) 记录的指针定位标记 d) 记录的删除标记
(29) 在foxbase圆点指示符下,要将a盘根目录下的sst.prg文件复制到c盘根目录下的my子目录下,应使用命令
a) copy a:sst.prg c:my
b) copy file a:sst.prg to c:my
c) copy file a:sst.prg to c:mysst
d) copy file a:sst.prg to c:mysst.prg
(30) 有如下命令序列:
x=”a“
y=x
a=”黄河长江“
?x+&x-y-&y
执行以上命令序列后,屏幕显示表达式x+&x-y-&y的结果是
a) 黄河长江 b) a黄河长江a黄河长江
c) a黄河长江a d) a黄河长江黄河长江
(31) 在默认的日期格式下,表列表达式中,结果一定为真(.t.)的是
a) ”200“>3 b) .not..t.
c) ”男“ d) ctod(”03/21/03“)>ctod(”03/12/03“)
(32) 在没有打开索引文件的情况下,如果使用append命令追加一条记录,其功能等同于命令序列
a) goto eof
insert
b) coto bottom
insert before
c) goto bottom
insert after
d) goto bottom
insert
(33) 要清空当前数据库文件hgz.dbf中”奖金“字段的全部值,应当使用命令
a) modify structure b) delete
c) replace d) zap
(34) 在foxabse中,用于建立或修改过程文件的命令是
a) modify <文件名> b) modify command <文件名>
c) modify procedure <文件名> d) create command <文件名>
(35) 在foxbase中,能够进行条件定位的命令是
a)skip b)seek c)locate d)go
(36) 设x=100,y=800,执行以下命令:
?iif(x>100,y-50,y+50)
屏幕显示结果是
a) 50 b) 750 c) 800 d) 850
(37) 如果测试函数type(”w“)的值是”u“,说明
a) w是数组 b) w未定义
c) w的值为u d) w的值无符号
(38) 在下列记录定位命令中,不能用found()函数检其操作是否成功的命令是
a)seek b)find c)locate/continue d)skip
(39) 有如下命令
set deleted on
use abc
go 3
delete next 2
go 4
recall
use
执行最后一条recall命令时,去掉删除标记的记录个数是
a) 0 b) 1 c) 2 d) 3
(40) 要清除所有变量名第二个字母为x的内存变量应使用命令
a) release all *x b) release all like x
c) release all like ?x* d) release all like ”?x“
(41) 为了确保向日期型字段”起始日期“中输入以前的日期,应在read之前使用语句
a) @5,15 say ”起始日期:“ get 起始日期 range, ctod(”12/31/96“)
b) @5,15 say ”起始日期:“ get 起始日期 range ctod(”12/31/96“),
c) @5,15 say ”起始日期:“ get 起始日期 for 起始日期<= ctod(”12/31/96“)
d) @5,15 say ”起始日期:“ get 起始日期 range date(),ctod(”12/31/96“)
(42) 若在update命令中使用了random短语,则
a) 源数据库和目标数据库都必须按关键字段排序或索引
b) 只需将源数据库按关键字段排序或索引
c) 只需将目标数据库按关键字段排序或索引
d) 源数据库和目标数据库均可以不按关键字段排序或索引
(43) 设当前数据库中有20条记录,当前记录号为10。有以下各组命令,在没有打开索引的情况下,两条命令执行结果相同的是
a) go 5与skip 5 b)go recno()+5与skip 5
c)skip recn0()+5与go recn0()+5 d)go recn0()+5与 list next 5
(44) 已知x=99,y=”a“,a=”telephone“,则len(str(x,2)+&y)的值为
a) 19 b) 11 c) 5 d) 5
(45) 已知proc.prg程序清单如下:
set talk off
n=20
t=1
do proc_1 with n,t
?t
set talk on
return
proc_1.prg程序清单如下:
parameters a,b
b=a*b
if a<=2
return
endif
do proc_1 with a-2,b
return
程序proc.prg的功能是
a) 输出20以内偶数的乘积 b) 输出20以内奇数的乘积
c) 输出结果为1 d) 输出结果为0
以下(46)-(50)题的操作均基于下面条件:
已建立并打开职工工资数据库zggz.dbf。该数据库的结构为:职工编号(c,6),姓名(c,8),性别(c,2),基本工资(n,7,2),奖金(n,7,2,),实发工资(n,8,2)
职工编号 姓名 性别 基本工资 奖金 实发工资
a10001 林大伟 男 1500.50 500.00 .50
a15002 高原 男 2000.00 300.00 2300.00
b10008 张高山 男 1200.80 200.00 1400.80
b15009 刘群 女 1050.60 350.00 1400.60
... ... ... ... ... ... >
(46) 要显示库中性别字段值为“女”的所有记录,错误的命令是
a) list for 性别=”女“ b) display for 性别=”女“
c) browse for 性别=”女“ d) display all for 性别=”女“
(47) 为了重新计算每个职工记录中实发工资字段的值,可使用命令
a) sum 实发工资
b) sum all 实发工资
c) replace 实发工资 with 基本工资+奖金
d) replace all 实发工资 with 基本工资+奖金
(48) 命令index on基本工资+奖金 to zggz的作用是
a)按基本工资升序排列,当基本工资相同时,按奖金升序排列
b)按基本工资降序排列,当基本工资相同时,按奖金降序排列
c)按基本工资与奖金之和的升序排列
d)按基本工资与奖金之和的降序排列
(49) 输出结果中,包含”张高山“记录的命令是
a) list for姓名=”高“ b) display all for ”高“
c) list for left(姓名,2)=”高“ d) display for at(”高“,姓名)=1
(50) 能逻辑删除职工编号中第3位是”5“的职工记录的命令为
a) delete for substr(职工编号,3)==”5“
b) delete for substr(职工编号,3,1)==5
c) delete for substr(职工编号,3,1)==”5“
d) delete for at(5,职工编号)=3
二、填空
请将每一个空的正确答案写在答题卡上【1】~【20】序号的横线上,答在试卷上不得分。
(1) 用十六进制给存储器中的字节地址进行编号,若地址编号从000到ffff,则该存诸器的容量为【1】kb。
(2) 假设在当前盘的当前目录下有两个文件a.txt和b.txt,现要将文件b.txt合并连接到文件a.txt的后面。若使用copy命令,则完整的命令为【2】 。
(3) e-mail地址由用户名和域名两部分组成,这两部分的分隔符为【3】。
(4) 假设在当前盘当前目录下有一个可执行程序user.exe。现要执行该程序,并要求在
执行过程中将显示输出的结果信息存入当前盘当前目录的文件out.dat中,则完整的dos命令
为【4】。
(5) 在dos环境下,表示打印机的设备文件名为【5】。
(6) 在当前打开的数据库文件中有一个长度为6的字符型字?quot;姓名”,有如下命令序列
replace 姓名 with “肖光”
? len(姓名)
执行最后一条命令的显示结果是【6】。
(7) 已知一张职工登记表包括姓名、性别、出生日期、婚否、政治面目、住址、电话等,若要建立保存此表的库文件,可以定义为逻辑字段的项目有【7】。(注意:字段与字段之间用顿号分隔,否则不得分)
(8) 有如下命令序列:
use xyz
?reccount()
skip +2
delete
?reccount()
执行第一条输出命令后,屏幕显示10。接着执行后面的命令序列,第二条输出命令显示的结果是【8】。
(9) 以下命令序列的功能是根据输入的考试成绩,显示相应的成绩等级。等级划分标准为:低于60分为“不合格”,60分以上(含60)为“通过”,其中90分以上(含90)的为“优秀”。请对该程序填空:
clear
【9】“请输入考试成绩:”to chj
do case
case chj<60
dj=“不合格”
case【10】
dj=“通过”
otherwise
dj=“优秀”
endcase
?“成绩等级:”【11】
return
(10) 有如下命令序列:
set date american
?dtoc(ctod(“9/21/”),1)
顺序执行以上两条命令之后,在屏幕上将显示【12】。
(11) 有以下三个数据库:
职员(职员号c(3),姓名c(6),性别c(2),职务c(10))
订单(订单号n(3),客户号c(3),职员号c(3),签订日期d(8),金额n(6,2))
客户(客户号c(3),客户号c(20),地址c(20),电话c(13))
要为订单库建立一个二重索引,要求按签订日期升序,相同签订日期的记录按职员号升序,索引表达式应为【13】。
(12) 有以下三个数据库:
职员(职员号c(3),姓名c(6),性别c(2),职务c(10))
订单(订单号n(3),客户号c(3),职员号c(3),签订日期d(8),金额n(6,2))
客户(客户号c(3),客户号c(20),地址c(20),电话c(13))
下面程序的功能是利用索引逐条显示8月份签订的订单记录。请填空:
select 0
use 订单
index on month(签订日期) to im
clear
seek 8
if【14】
do while【15】
display
skip
enddo
else
?“8月份没有订单!”
endif
close database
return
(13) 有以下三个数据库:
职员(职员号c(3),姓名c(6),性别c(2),职务c(10))
订单(订单号n(3),客户号c(3),职员号c(3),签订日期d(8),金额n(6,2))
客户(客户号c(3),客户号c(20),地址c(20),电话c(13))
下面的程序的功能是分别统计职员号以a或b开头的职员所签订的订单数目和总金额。请填空:
clear
store 0 to nl,sl,n2,s2
select 0
use 订单
do while .not. eof()
do case
case【16】
n1=n1+1
s1=s1+金额
case【17】
n2=n2+1
s2=s2+金额
endcase
【18】
enddo
?“a职员订单数;”+str(n1,3)+space(10)+“总金额;”+str(s1,7,2)
?“b职员订单数;”+str(n2,3)+space(10)+“总金额;”+str(s2,7,2)
close database
return
(14) 有以下三个数据库:
职员(职员号c(3),姓名c(6),性别c(2),职务c(10))
订单(订单号n(3),客户号c(3),职员号c(3),签订日期d(8),金额n(6,2))
客户(客户号c(3),客户号c(20),地址c(20),电话c(13))
下面程序的功能是根据订单号查询该订单及相关职员和客户的信息,要求在屏幕的第6行第20列开始显示输出信息。请填空:
set safety
clear
input “请输入订单号:”to mddh
locate for 订单号=mddh
if eof()
?“无此订单号!”
else
【20】“职员:”+职员-〉姓名+“客户;”+客户-〉客户名+“金额:”-str(金额,6,2)
endif
wait “继续查询吗(y/n)?” to yn
enddo
close database
set safety on
return
篇4:4月全国计算机等级考试二级QBASIC语言程序设计
一、选择题((1)-(40)每小题1分,(41)-(50)每小题2 分,共60分)
下列各题 a) 、b)、c) 、d)四个选项中,只有一个选项是正确的,请将正确选项涂写在
答题卡相应位置上,答在试卷上不得分。
(1) 用8位无符号二进制数能表示的最大十进制数为
a) 127 b) 128 c) 255 d) 256
(2) 在64位高档微机中,一个字长所占的二进制位数为
a) 8 b) 16 c) 32 d) 64
(3) 在windows环境下,为了复制一个对象,在用鼠标拖动该对象时应同时按住
a) alt键 b)esc键 c)shift键 d)ctrl键
(4) 在windows菜单中,暗淡(灰色)的命令项表示该命令
a) 暂时不能用 b) 正 在执行 c) 包含下一层菜单 d) 包含对话框
(5) 在dos环境下,为了得到type命令的帮助信息,正确的dos命令为
a) type b) type/h c) type/* d) type/?
(6) 下列选项中,能作为合法dos文件名的是
a) anp/a.dat b) abccom c) ecd.basic d) xy+z.txt
(7) 下列叙述中正确的是
a) 在windows环境下,最大化的窗口是不能移动的
b) 在windows环境下,应用程序窗口最小化后,该应用程序暂停执行
c) 在windows环境下,只有最小化的窗口才能关闭
d) 在windows环境下,不能关闭最大化的窗口
(8) 在windows环境下,工具栏中的复制按钮是
a) 打印机图标 b)剪刀标志 c) 复制标志 d) 粘贴标志
(9) 在windows98环境下,若要将整个屏幕上显示的内容存入剪贴板,可以按
a) ctrl+printscreen键 b) alt+printscree键
c) shift+printscreen键 d) printscreen键
(10) 目前,计算机病毒扩散最快的途径是
a) 通过软件复制 b) 通过网络传播
c) 通过磁盘考贝 d) 运行游戏软件
(11) 在qbasic集成开发环境中,在编辑源程序后要运行程序,应按下键盘上的
a) f2键 b) f5键 c) enter键 d) end键
(12) 关于qbasic源程序语句中行号的说法正确的是
a) 必须有行号 b) 不允许有行号 c) 根据需要可有可无 d) 只允许有标号
(13) 在qbasic中,常量3e1的数据类型是
a) 字符串 b) 单精度实型 c) 双精度实型 d) 整型
(14) 在下列四个式子中,非法的qbasic表达式是
a) a=abc b) 5>3+3 c) a+b=c d) 55
(15) qbasic表达式3^3/3mod2的值是
a) 1 b) -1 c) 3 d) 0
(16) 在以下属于合法的qbasic变量名是
a) x-3 b) 4y c) n$1 d) b.1
(17) 定义一个3×3的二维数组,正确的语句是
a) dim a(0 to 3,0 to 3) b)dim a(2000 to 2002,0 to 2)
c) dim a(3),a(3) d)dim a(1 to 3)
(18) 下列语句中合法的是
a) print a=atn b) print“sin(3.14)”+“cos(3.14”
c) print tab(10) “qb” d) print using“####”,1234.56
(19) 在qbasic中,下列运算符优先级最高的是
a) mod b) not c) / d) ^
(20) 正确的单行自定义函数语句是
a) def fn(x)=3.14159*x^2 b) define fn(x)=3.14129*x^2
c) def fnn(x)=3.14159*x^2 d) def fnn(x)=3.14159*x^2 end
(21) 表达式int(4*rnd+1)*(int(4*rnd-1))值的范围是
a) [0,8] b) [-1,8] c) [-3,8] d)[-4,8]
(22) 有如下程序段
const c=“wang”
c$=“a”
print len(c);len(c$)
其输出结果为
a) wang a b) 4 1 c) 1 1 d) 重复定义,程序出错
(23) 有如下程序段
a%=12.8:b!=14.5
print a%,b!
其输出结果为
a) 12.8 4 b) 12 1 4.5 c) 12.8 15 d) 13 1 4.5
(24) 有如下程序
read a,b,c
restore k
read c,c,d
data 1,2
k: data 3,4,5
print a;b;c;d
end
a) 1 2 3 4 b) 1 2 3 5 c) 3 4 5 4 d) 1 2 4 5
(25) 以下语句中错误的是
a) input“x,y=”;a,b b) input“x,y=”,c,d
c) input, “x,y=”,e,f d) input; “x,y=”,g,h
(26) 实现选择结构“如果x确程序段为
a) if x
b) if x>=y then
a=-15 a=-15
print a else a=15
end if end if
print a
c) if x>y then a=-15
d) if x>=y then go to d
a=15 a=15
print a d: a=-15
end print a
end
(27) 以下语句中正确的是
a) for 1 to 10 step 2 b) for x=1,9 step3
c) for x=10 to-10 step-10 d) for x=10 to 50 next
(28) 有如下程序
dim k as integer, y as integer
let y=3
for k=1 to 5 step-1
y=y+k
next k
print y;k
end
其输出结为
a) 3 1 b) 4 0 c) -1 6 d) 4 1
(29) 有如下程序
dim x as integer, y as integer
for x=1 to 2
for y=0 to x=-1
print x*y
next y
next x
end
内层循环的循环体的总执行次数是
a) 1 b) 2 c) 3 d) 4
(30) 有如下程序
dim x as integer, y as integer
x=0
read y
while y-9999 and x3
if y>x then x=y
read y
wend
data-9999,9,8,3,9999
print abs(y)
end
运行后的输出结果为
a) 9 b) -9999 c) 3 d) 9999
(31) 有如下程序
a$=”12“
b$=”24“
c$=b$+a$
d=val(c$)
print d100
end
运行后的输出结果是
a) 12 b) 36 c)34 d) 24
(32) 有如下程序
for j=1 to 5
a=(a+j)mod 5
next j
print a
end
运行后的输出结果是
a) 0 b) 5 c) 25 d) 50
(33) 当eof()函数返回的值为-1时,表示文件指针指向文件的
a) 开头 b) 第一个记录 c) 末尾 d) 最后一个记录
(34) 有如下程序
for x=1 to 4
z=0
for y=1 to x+2
z=z+1
next y
print z;
next x
end
运行后的输出结果是
a) 3 4 5 6 b) 4 5 6 7 c) 5 6 7 8 d) 6 7 8 9
(35) 有如下程序
def fna(x,y)=x^2+y^2
x=4
y=3
print fna(x,y)
end
运行后的输出结果是
a) 5 b)7 c)25 d)49
(36) 有如下程序
m$=”abcde“
mid$(m$,1,5)= ”abcde“
print m$
end
运行后的输出结果是
a) abcdeabcde b) abcdeabcde c) abcde d) abcde
(37) 有如下程序
for j=1 to 10
read a
if a mod 2=0 then sum=sum+a
next j
print”sum=“;sum
data 1,3,6,10,15,21,28,36,45,55
end
运行后的输出结果是
a) 55 b) 80 c) 140 d) 220
(38) 有如下程序
x=1
do
x=2*x+1
num=num+1
loop until x>100
print num,x
end
运行后的输出的结果是
a) 6 127 b)8 127 c)127 8 d)127 8
(39) 有如下程序
sum=0
for i=1 to 9
if i10 then
sum=sum+1
else
sum=sum+2
end if
next i
(40) 有如下程序
m$=”*“
i=1
for k=3 to 1 step -1
x$=string$(k+i,m$)
print x$
m$=m$+”*“
i=-i
next k
end
运行后的输出结果是
a) **
***
****
b) ****
***
**
c) ****
*
**
d) ****
**
******
(41) 有如下程序
declare sub f(m%,n%,g%)
call f(87,69,g%)
print g%
end
sum f(m%,n%,g%)
a=m%
b=n%
do
c=a mod b
a=b
b=c
loop while c0
g%=a
end sub
运行后的输出结果是
a) 3 b) 18 c) 69 d)87
(42) 有如下程序
input n
i=2
t=-1
do while i*i<=n
if n mod i=0 then
t=0
end if
i=i+1
loop
print t
end
运行时输入257,输出结果是
a) 0 b) 1 c) -1 d) 257
(43) 有如下程序
month=int(rnd*3+1)+6
select cass month
case 1 to 3
season$=”first“
case 4 to 6
season$=”second“
case 7 to 9
season$=”third“
case else
season$=”fourth“
end select
print season$
end
运行后的输出结果是
a) first b)second c)thire d)不能确定
(44) 有如下程序
declare function f(n)
input n
print f(n)
end
function f(n)
if n=0 then f=0 else f=n+f(n-1)
end function
键盘输入n运行后的输出结果是78,则n的值是
a) 10 b)11 c)12 d)13
(45) 有如下程序
cls:screen 13:color 2
x=180:y=100:r=50
circle(x,y),50
circle(180,100),r
end
该程序在屏幕上显示的是
a) 一个圆 b) 两个同心圆 c) 两个不同心的圆 d) 没有显示
(46) 有如下程序
screen 13
color 2
line(10,10)-(50,50)
line(50,50)-(10,90)
end
程序所画两条线段
a) 关于一点对称 b) 关于一条垂直的直线对称
c) 关于一条水平的直线对称 d) 重合
(47) 有如下程序
for m=3 to 5
for j=1 to m-2
for k=j to 3
n=n+k
next k
next j
next m
end
运行后n的值为
a) 21 b) 25 c) 31 d) 42
(48) 有如下程序
m$=”a“
n$=”b“
o$=lcase$(m$)
p$=ucase$(n$)
end
运行结果是
a) a 0 b 0 b) a 0 b0 c) a 97 b 66 d) a 65 b 98
(49) 语句open”a.dat“for random as#1 len=30表示此文件每个记录
a)长度等于30个字符 b)长度等于30个字节
c)长度小于或等于30个字节 d)长度小于或等于30个字符
(50) 有如下程序
dim x(3,3)
for k=1 to 2
for j=1 to 2
if k=j then
x(k,j)=1
else
x(k,j)=0
end if
next j:next k
open”diagonal.dat“for output as#1
for k=1 to 2
print#1,x(k,1);x(k,2)
next k
close#1
end
执行程序,屏幕上显示的结果是
a) 0 1
1 0
b) 1 0
0 1
c) 0 0
1 1
d) 没有任何显示
二、填空题(每空2分,共20分)
请将每空的正确答案写在答题卡上【1】-【10】序号的横线上,答在试卷上不得分。
(1) 用十六进制给存储器中的字节地址进行编号,若地址编号从000到ffff,则该存诸器的容量为【1】kb。
(2) 假设在当前盘的当前目录下有两个文件a.txt和b.txt,现要将文件b.txt合并连接到文件a.txt的后面。若使用copy命令,则完整的命令为【2】。
(3) e-mail地址由用户名和域名两部分组成,这两部分的分隔符为【3】。
(4) 假设在当前盘当前目录下有一个可执行程序user.ext。现要执行该程序,并要求在执行过程中将显示输出的结果信息存入当为【4】。
(5) 在dos环境下,表示打印机的设备文件名为【5】。
(6) 数据式aeutcos(wt+v)的qbasic表达式为【6】。
(7) 常数-0.00013579的标准化的指数形式是【7】。
(8) 有如下程序
a=1357:b=246
c=len(str$(a)+str$(b))
print c
end
运行后,输出的值是【8】。
(9) 四个字符串”xab“、”“xyz”、“def”及“de”中最大者为【9】。
(10) 有如下程序
for j=1 to 11
j=j+1
if j mod 4=0 then n=n+1
next j
print“n=”;n
end
运行后,输出的值是【10】。
(11) 有如下程序
x=5:y=-20
if not x>0 then
x=y-3
else
y=y+3
end if
print x-y;y-x
end
运行后的输出结果是【11】。
(12) 设a=2,b=3,c=4,d=5,表达式3>2*b or a=c and bc or c>d的值是【12】。
(13) 有如下程序
for i=1 to 5
for x=i to 5 step 1
if i=2 and x<5 then print“*”;
next x
next i
end
运行后输出的结果是【13】。
(14) 随机生成100个-500到500间的整数(含-500和500),并找出其中第k大的数。请在【14】、【15】处填入适当内容将程序补充完整。
dim a(100)
input k
for i=1 to 100
a(i)=int(【14】*rnd)-500:print a(i);
next i
for i=1 to k
for j=i+1 to 100
if【15】then swap a(i),a(j)
next j
next i
print“a(”;k;“)=”;a(k);
end
(15) 有如下程序
dim i as integer,x as integer
x=1:y=1:i=1
do while i<4
f=x+y
x=y
y=f
print f
i=i+1
loop
end
运行后的输出的结果是【16】。
(16) 有如下程序
dim tel(10)as string*8
for i=1 to 4
read tel(i)
next i
for i=1 to 4
if left$(tel(i),1)=“2”then
tel(i)=“6”+tel(i)
else
tel(i)=tel(i)+“9”
end if
next i
print tel(1),tel(2)
data 6543210,2345678,2457788,8237777
end
运行后输出的结果是【17】。
(17) 下面的程序从键盘输入一个正整数n,计算并输出比n小,并且与n互素的数的个数。(两个数互素是指它们的最大公约数等于1)
declare function gcd(a,b)
input n
phi=1
for i=2 to n-1
if gcd(n,i)=1 then phi=【18】
next i
end
function gcd(a,b)
if b=0 then
tmp=【19】
else
if b=1 then tmp=1 else tmp=gcd(b, 【20】)
endif
gd=tmp
end function
运行后,输出的值是
篇5:4月全国计算机等级考试二级VFp笔试试题
一、选择题((1)~(35)每小题2分,共70分)
下列各题a)、b)、c)、d)四个选项中,只有一个选项是正确的,请将正确选项涂写在大题卡相应位置上,答在试卷上不得分。
(1) visual foxpro dbms 是
a)操作系统的一部分 b)操作系统支持下的系统软件
c)一种编译程序 d)一种操作系统
(2) visual foxpro dbms 基于的数据模型是
a)层次型 b)关系型 c)网状型 d)混合型
(3) 设有部门和职员两个实体,每个职员只能属于一个部门,一个部门可以有多名职员,
则部门与职员实体之间的联系类型是
a)m:n b)1:m c)m:k d)1:1
(4) 在visual foxpro中,调用表设计器建立数据库表student.dbf的命令是
a)modify structure student
b) modify command student
c)reate student
d) create table student
(5) 在visual foxpro中,关于自由表叙述正确的是
a)自由表和数据库表是完全相同的
b)自由表不能建立字段级规则和约束
c)自由表不能建立候选索引
d)自由表不可以加入到数据库中
(6)在visual foxpro中,建立数据库表时,将年龄字段值限制在12~14之间的这种约束属于
a)实体完整性约束 b)域完整性约束
c)参照完整性约束 d)视图完整性约束
(7) 在visual foxpro中,运行表单t1.scx的命令是
a)do t1 b)run form1 t1
c) do form t1 d) do from t1
(8)使用sql语句进行分组检索时,为了去掉不满足条件的分组,应当
a)使用where子句
b)在group by后面使用having 子句
c)先使用where子句,再使用having 子句。
d)先使用having 子句,再使用where子句
(9) 在visual foxpro的参照完整性规则不包括
a)更新规则 b)删除规则 c)查询规则 d)插入规则
(10) 在visual foxpro中,表结构中的逻辑型、通用型、日期型字段的宽度由系统自动给
出,它们分别为:
a)1、4、8 b)4、4、10 c)1、10、8 d)2、8、8
(11)在visual foxpro中,学生表student中包含有通用型字段,表中通用型字段中的
数据均存储到另一个文件中,该文件名为
a) student.doc b) student.men
c) student.dbt d) student.ftp
(12) 在visual foxpro中,使用“菜单设计器”定义菜单,最后生成的菜单程序的扩展名是
a)mnx b)prg c)mpr d)spr
(13)在visual foxpro中,使用sql命令将学生student中的学生年龄age字段的值增加1岁,应该使用的命令是
a) replace age with age+1
b) update student age with age+1
c) update set age with age+1
d) update student set age=age+1
(14) 调用报表格式文件pp1预览报表的命令是
a)report from pp1 preview b)do from pp1 preview
c)report form pp1preview d)do form pp1 preview
(15)在visual foxpro中,建立索引的作用之一是
a) 节省存储空间 b) 便于管理
c) 提高查询速度 d) 提高查询和更新的速度
(16)在visual foxpro中,相当于主关键字的索引是
a) 主索引 b) 普通索引
c) 唯一索引 d) 排序索引
(17)在visual foxpro中,为了将表单从内存中释放(清除),可将表单中退出命令按钮的click事件代码设置为
a)thisform.refresh b)thisform.delete
c) thisform.hide d) thisform.release
(18)假定一个表单里有一个文本框text1和一个命令按钮组commandgroup1,命令按钮组是一个容器对象,其中包含command1 和command2两个命令按钮。如果要在command1命令按钮的某个方法中访问文本框的value属性值,下面哪个式子是正确的?
a)thisform.text1.value b)this.parent.value
c) parent.text1.value d)this.parent.text1.value
(19) 在visual foxpro 中,创建一个名为sdb.dbc的数据库文件,使用的命令是
a) create b)create sdb
c) create table sdb d)create database sdb
(20)在visual foxpro中,存储图象的字段类型应该是
a)备注型 b)通用型
c)字符型 d)双精度型
(21)在visual foxpro中,下面4个关于日期或日期时间的表达式中,错误的是
a){^.09.01 11:10:10:am}-{^.09.01 11:10:10am}
b){^01/01/2002}+20
c){^2002.02.01}+{^2001.02.01}
d){^2002/02/01}-{^2001/02/01}
(22)在visual foxpro中,关于过程调用的叙述正确的是
a)当实参的数量少于形参的数量时,多余的形参初值取逻辑假
b)当实参的数量多于形参的数量时,多余的实参被忽略
c)实参与形参的数量必须相等
d)上面a和b都正确
(23)下面是关于表单数据环境的叙述,其中错误的是
a)可以在数据环境中加入与表单操作有关的表
b)数据环境是表单的容器
c)可以在数据环境中建立表之间的联系
d)表单自动打开其数据环境中的表
(24)在visual foxpro中,如果希望一个内存变量只限于在本过程中使用,说明这种内存变量的命令是:
a)private
b)public
c)local
d)在程序中直接使用的内存变量(不通过a,b,c说明)
(25)在 do while … enddo循环结构中,loop命令的作用是:
a)退出过程,返回程序开始处
b) 转移到do while语句行,开始下一个判断和循环
c) 终止循环,将控制转移到本循环结构enddo后面的第一条语句继续执行
d)终止程序执行
(26)在visual foxpro中,关于视图的正确叙述是
a)视图与数据库表相同,用来存储数据
b)视图不能同数据库表进行连接操作
c)在视图上不能进行更新操作
d)视图是从一个或多个数据库表导出的虚拟表
(27)sql是那几个英文单词的缩写
a)standard query language b)structured query language
c) select query language d)以上都不是
(28)如果学生表student是使用下面的sql语句创建的
create table student(sno c(4) primary key notnull,;
sn c(8),;
sex c(2),;
age n(2) check(age>15 and age<30)
下面的sql语句中可以正确执行的是
a)insert into student(sno,sex,age) values (“s9”,“男”,17)
b)insert into student(sno,sex,age) values (“李安琦”,“男”,20)
c)insert into student(sex,age) values (“男”,20)
d)insert into student(sno,sn) values (“s9”,“安琦”,16)
(29)使用sql语句从表student中查询所有姓王的同学的信息,正确的命令是:
a)select*from student where left (姓名,2)=“王”
b)select*from student where right (姓名,2)=“王”
c)select*from student where trim (姓名,2)=“王”
d)select*from student where str (姓名,2)=“王”
(30)连编后可以脱离开visual foxpro独立运行的程序是
a) app程序 b)exe程序
c)fxp程序 d)prg程序
第(31)-(35)题使用如下表的数据:
部门表
部门号 部门名称
40 家用电器部
10 电视录摄像机部
20 电话手机部
30 计算机部
商品表
部门号 商品号 商品名称 单价 数量 产地
40 0101 a牌电风扇 200.00 10 广东
40 0104 a牌微波炉 350.00 10 广东
40 0105 b牌微波炉 600.00 10 广东
20 1032 c牌传真机 1000.00 20 上海
40 0107 d牌微波炉 420.00 10 北京
20 0110 a牌电话机 200.00 50 广东
20 0112 b牌手机 .00 10 广东
40 0202 a牌电冰箱 3000.00 2 广东
30 1041 b牌计算机 6000.00 10 广东
30 0204 c牌计算机 10000.00 10 上海
(31)sql语句
select部门号,max(单价*数量)from商品表group by部门号查询结果有几条记录?
a)1 b)4 c)3 d)10
(32) sql语句
select 产地,count(*) 提供的商品种类数;
from 商品表;
where 单价>200;
group by 产地 having count(*)>=2;
order by 2 desc
查询结果的第一条记录的产地和提供的商品种类数是
a)北京,1 b)上海,2
c)广东,5 c)广东,7
(33) sql 语句
select 部门表.部门号,部门名称,sum(单价*数量);
from 部门表,商品表;
where 部门表.部门号=商品表.部门号;
group by 部门表.部门号
查询结果是
a)各部门商品数量合计 b)各部门商品金额合计
c)所有商品金额合计 d)各部门商品金额平均值
(34) sql 语句
select 部门表.部门号,部门名称,商品号,商品名称,单价;
from 部门表,商品表;、
where 部门表.部门号=商品表.部门号;
order by 部门表.部门号 desc,单价
查询结果的第一条记录的商品号是
a)0101 b)0202 c)0110 d)0112
(35) sql 语句
select 部门名称 from 部门表 where 部门号 in;
(select 部门号 from 商品表 where 单价 between 420 and 1000)
查询结果是
a)家用电器部、电话手机部 b)家用电器部、计算机部
c)电话手机部、电视录摄像机部 d)家用电器部、电视录摄像机部
二、 填空题(每空2分,共30分)
请将每一个空的正确答案写在答题卡上【1】—【15】序号的答题卡上,答在试卷上不得分。
(1) 用二维表数据来表示实体之间联系的数据模型称为【1】。
(2) 在visual foxpro 中说明数组后,数组的每个元素在未赋值之前的默认值是【2】。
(3) 可以在项目管理器的 【3】 选项卡下建立命令文件 。
(4) 在visual foxpro中数据库文件的扩展名是【4】.dbc,数据库表文件的扩展名是【5】。
(5) 打开数据库设计器的命令是【6】data
(6) 在sql的caeata table 语句中,为属性说明取值范围(约束)的是【7】短语。
(7) sql插入记录的命令是insert,删除记录的命令是【8】,修改记录的命令是【9】。
(8) 在sqr的嵌套查询中,量词any和【10】是同义词。在sql查询时,使用【11】 子句指出的是查询条件。
(9) 从职工数据库表中计算工资合计的sql语句是
select【12】from职工。
(10) 把当前表当前记录的学号,姓名字段值复制到数组a 的命令是
scatter field 学号,姓名【13】。
(11) 在表单中确定控件是否可见的属性是【14】。
(12) 函数between(40,34,50)的运算结果是【15】。
篇6:3月全国计算机等级考试二级考试时间
NCRE安排三次考试,考试时间分别为3月21日-24日、9月19日-22日、12月12日-13日,其中3月和9月考试开考全部级别全部科目,12月只开考一级和二级,各省级承办机构根据实际情况确定是否开考12月的考试。
20NCRE继续实施版考试大纲,教材参见全国计算机等级考试教材目录(年版)。
二级考试科目如下:
级别 科目名称 科目代码 考试时间 二级 语言程序设计类 C语言程序设计 24 120分钟 VB语言程序设计 26 120分钟 Java语言程序设计 28 120分钟 C++语言程序设计 61 120分钟 Web程序设计 64 120分钟 数据库程序设计类 VFP数据库程序设计 27 120分钟 Access数据库程序设计 29 120分钟 MySQL数据程序设计 63 120分钟 办公软件 MS Office高级应用 65 120分钟篇7:全国计算机等级考试(二级QB)考试大纲
基本要求
1.具有计算机的基础知识。
2.了解操作系统的基本概念,掌握常用操作系统的使用。
3.掌握基本数据结构和常用算法,熟悉算法描述工具――流程图的使用。
4.能熟练地使用一种高级语言或数据库语言编写程序、调试程序。
考试内容
一、基础知识与基本操作
(一)基础知识
1.计算机系统的主要技术指标与系统配置。
2.计算机系统、硬件、软件及其相互关系。
3.微机硬件系统的基本组成。包括:中央处理器(运算器与控制器),内存储器(ram与rom),外存储器(硬盘、软盘与光盘),输入设备(键盘与鼠标)输出设备(显示器与打印机)。
4.软件系统的缀成,系统软件与应用软件;软件舶蒸丰概念,文档;程序设计语言与语言处理程序(汇编程序、编译程序、解释程序)。
5.计算机的常用数制(二进制、十六进制及其与十进制之间的转换);数据基本单位(位、字节、字)。
6.计算机的安全操作;计算机病毒的防治。
7.计算机网络的一般知识。
8.多媒体技术的一般知识。
(二)dos的基本操作
l.操作系统的基本功能与分类。
2.dos操作系统的基本组成。
3.文件、目录、路径的基本概念。
4.常用dos操作,包括:
初始化与启动:
文件操作(type,copy,del,ren,xcopy,attrⅰb);
目录操作(dⅰr,md,cd,rd,tree,path);
磁盘操作(format,dⅰskcopy,chkdsk);
功能操作(ⅴer,date,tⅰme,cls,prompt,help);
批处理(批处理文件的建立与执行,自动批处理文件);
输入输出改向。
(三)windows的基本操作
1.windows的特点、基本构成及其运行环境。
2.windows用户界面的基本元素。包括:窗口、图标、菜单、对话框、按钮、光标等。
3.windowo基本操作。包括:启动与退出,鼠标操作,窗口操作,图标操作、菜单操作,对话框操作。
二、程序设计
1.能运用结构化程序设计方法编写程序。
2.掌握基本数据结构和常用算法。
3.能熟练使用一种高级语言或一种数据库语言(共有qbasic、fortran、c以及foxbase+等四种语言,考生任选其中一种。各种语言的考试内容附后)。
三、上机操作
在指定的时间内使用微机完成下述操作:
1.完成指定的计算机基本操作(包括机器启动和操作命令的使用)。
2.按给定要求编写和运行程序。
3.调试程序,包括对给出的不完善的程序进行修改和补充,使之能得到正确的结果。
qbasic语言程序设计
(一)qbasic的基本概念
1.qbasic提供的数据类型。
2.常量和变量的概念、变量的命名规则、变量的类型说明。
3. 运算符和运算规则(算术运算、关系运算、逻辑运算、字符运算)。
4. 表达式(算术表达式、关系表达式、逻辑表达式、字符表达式)的概念及求值。
(二)顺序结构程序设计
1. 变量的赋值(let语句)。
2. 数据输出(print语句)。
3. 数据输入(input语句,read/data语句,restore语句)。
4. 程序停止执行(end语句,stop语句)。
5. 程序注释(rem语句)。
(三)选择结构程序设计
1. 行if语句。
2. 块if结构。
3. select case结构
4. 选择结构的嵌套
(四)循环的概念
1. 循环的概念。
2. while循环结构。
3. for--next循环结构。
4. do循环结构。
5. 循环结构的嵌套。
(五)数组
1. 数组和数组元素。
2. 数组定义的方法。
3. 引用数组元素的方法。
4. 静态数组和动态数组。
5. 一维数组和多维数组。
6. 数组的运算。
(六)函数与子程序
1. 标准函数。
2. 单行自定义函数和多行自定义函数的定义和引用。
3. 块内子程序──子例程(gosub--return语句,ongosub--return语句及onkey(n)gosub--return语句)。
4. 独立模块的子程序的定义(sub--endsub语句)和调用(call语句)。
5. 模块化函数的定义(function--endfunction语句)和调用。
6. 模块间的数据传递(虚实结合)。
7. 全局变量与局部变量。
8. 过程的嵌套调用。
9. 过程的递归调用。
(七)字符处理
1. 字符串变量的概念。
2. 字符串变量的赋值。
3. 字符串的运算。
4. 字符串函数。
5. 字符串数组。
(八)文件
1. 文件的概念。
2. 对源程序文件的操作。
3. 对顺序文件的操作。
4. 记录型变量的定义(type--endtype语句)和随机文件的操作。
(九)屏幕控制与作图
1. 屏幕控制(cls语句,locate语句)。
2. 显示模式的控制(screen语句)。
3. 颜色的设置(color语句)。
4. 标准作图语句(pset语句,preset语句,line语句,draw语句和circle语句)。
5. 图形的着色(paint语句)
篇8:全国计算机等级考试(二级C)考试大纲
基本要求
1.具有计算机的基础知识。
2.了解操作系统的基本概念,掌握常用操作系统的使用。
3.掌握基本数据结构和常用算法,熟悉算法描述工具――流程图的使用。
4.能熟练地使用一种高级语言或数据库语言编写程序、调试程序。
考试内容
一、基础知识与基本操作
(一)基础知识
1.计算机系统的主要技术指标与系统配置。
2.计算机系统、硬件、软件及其相互关系。
3.微机硬件系统的基本组成。包括:中央处理器(运算器与控制器),内存储器(ram与rom),外存储器(硬盘、软盘与光盘),输入设备(键盘与鼠标)输出设备(显示器与打印机)。
4.软件系统的缀成,系统软件与应用软件;软件舶蒸丰概念,文档;程序设计语言与语言处理程序(汇编程序、编译程序、解释程序)。
5.计算机的常用数制(二进制、十六进制及其与十进制之间的转换);数据基本单位(位、字节、字)。
6.计算机的安全操作;计算机病毒的防治。
7.计算机网络的一般知识。
8.多媒体技术的一般知识。
(二)dos的基本操作
l.操作系统的基本功能与分类。
2.dos操作系统的基本组成。
3.文件、目录、路径的基本概念。
4.常用dos操作,包括:
初始化与启动:
文件操作(type,copy,del,ren,xcopy,attrⅰb);
目录操作(dⅰr,md,cd,rd,tree,path);
磁盘操作(format,dⅰskcopy,chkdsk);
功能操作(ⅴer,date,tⅰme,cls,prompt,help);
批处理(批处理文件的建立与执行,自动批处理文件);
输入输出改向。
(三)windows的基本操作
1.windows的特点、基本构成及其运行环境。
2.windows用户界面的基本元素。包括:窗口、图标、菜单、对话框、按钮、光标等。
3.windowo基本操作。包括:启动与退出,鼠标操作,窗口操作,图标操作、菜单操作,对话框操作。
二、程序设计
1.能运用结构化程序设计方法编写程序。
2.掌握基本数据结构和常用算法。
3.能熟练使用一种高级语言或一种数据库语言(共有qbasic、fortran、c以及foxbase+等四种语言,考生任选其中一种。各种语言的考试内容附后)。
三、上机操作
在指定的时间内使用微机完成下述操作:
1.完成指定的计算机基本操作(包括机器启动和操作命令的使用)。
2.按给定要求编写和运行程序。
3.调试程序,包括对给出的不完善的程序进行修改和补充,使之能得到正确的结果。
c语言程序设计
(一)c语言的结构
1.程序的构成,main函数和其它函数。
2.头文件、数据说明、函数的开始和结束标志。
3.源程序的书写格式。
4.c语言的风格。
(二)数据类型及其运算
1.c的数据类型(基本类型、构造类型、指针类型、空类型)及其定义方法
2.c运算符的种类、运算优先级、结合性。
3.不同类型数据间的转换与运算。
4.c表达式类型(赋值表达式、算术表达式、关系表达式、逻辑表达式、条件表达式、逗号表达式)和求值规则。
(三)基本语句
1.表达式语句,空语句,复合语句
2.数据的输入与输出,输入输出函数的调用。
3.复合语句。
4.go to 语句和语句标号的使用。
(四)选择结构程序设计
1.有if语句实现选择结构。
2.用switch语句实现多分支选择结构。
3.选择结构的嵌套。
(五)循环结构程序设计
1.for 循环结构。
2.while和do while循环结构。
3.continue语句、break语句。
4.循环的嵌套。
(六)数组的定义和引用
1.一维数组和多维数组的定义、初始化和引用。
2.字符串与字符数组。
(七)函数
1.库函数的正确调用。
2.函数的定义方法。
3.函数的类型和返回值。
4.形式参数与实在参数,参数值的传递。
5.函数的正确调用,嵌套调用,递归调用。
6.局部变量和全局变量。
7.变量的存储类别(自动、静态、寄存器、外部),变量的作用域和生存期。
8.内部函数与外部函数。
(八)编译预处理
1.宏定义:不带参数的宏定义;带参数的宏定义。
2.“文件包含”处理。
(九)指针
1.指针与指针变量的概念,指针与地址运算符。
2.变量、数组、字符串、函数、结构体的指针以及指向变量、数组、字符串、函数、结构体的指针变量。通过指针引用以上各类型数据。
3.用指针作函数参数。
4.返回指针值的指针函数。
5.指针数组,指向指针的指针,main函数的命令行参数。
(十)结构体(即“结构”)与共用体(即“联合”)
1.结构体和共用体类型数据的定义方法和引用方法。
2.用指针和结构体构成链表,单向链表的建立、输出、删除与插入。
(十一)位运算
1.位运算符的含义及使用。
2.简单的位运算。
(十二)文件操作
只要求缓冲文件系统(即高级磁盘i/o系统),对非标准缓冲文件系统(即低级磁盘i/o系统)不要求。
1.文件类型指针(file类型指针)。
2.文件的打开与关闭(fopen,fclose)。
3.文件的读写(fputc,fgetc,fputs,fgets,fread,frwite,fprintf,fscanf函数),文件的定位(rewind,fseek函数)。












