2020年全国计算机二级等级考试全真模拟试卷及答案(二)
- 格式:docx
- 大小:50.61 KB
- 文档页数:36
2020年全国计算机二级等级考试模拟试卷及答案(第二套)1.一个栈的初始状态为空。
现将元素1、2、3、4、5、A、B、C、D、E依次入栈,然后再依次出栈,则元素出栈的顺序是()。
A) 12345ABCDEB) EDCBA54321C) ABCDE12345D) 54321EDCBA参考答案:B2.下列叙述中正确的是()。
A) 循环队列有队头和队尾两个指针,因此,循环队列是非线性结构B) 在循环队列中,只需要队头指针就能反映队列中元素的动态变化情况C) 在循环队列中,只需要队尾指针就能反映队列中元素的动态变化情况D) 循环队列中元素的个数是由队头指针和队尾指针共同决定参考答案:D3.在长度为n的有序线性表中进行二分查找,最坏情况下需要比较的次数是()。
A) O(n)B) O(n2)C)D)参考答案:C4.下列叙述中正确的是()。
A) 顺序存储结构的存储一定是连续的,链式存储结构的存储空间不一定是连续的B) 顺序存储结构只针对线性结构,链式存储结构只针对非线性结构C) 顺序存储结构能存储有序表,链式存储结构不能存储有序表D) 链式存储结构比顺序存储结构节省存储空间参考答案:A5.数据流图中带有箭头的线段表示的是()。
A) 控制流B) 事件驱动C) 模块调用D) 数据流参考答案:D6.在软件开发中,需求分析阶段可以使用的工具是()。
A) N-S图B) DFD图C) PAD图D) 程序流程图参考答案:B7.在面向对象方法中,不属于"对象"基本特点的是()。
A) 一致性B) 分类性C) 多态性D) 标识唯一性参考答案:A8.一间宿舍可住多个学生,则实体宿舍和学生之间的联系是()。
A) 一对一B) 一对多C) 多对一D) 多对多参考答案:B9.在数据管理技术发展的三个阶段中,数据共享最好的是()。
A) 人工管理阶段B) 文件系统阶段C) 数据库系统阶段D) 三个阶段相同参考答案:C10.有三个关系R、S和T如下:由关系R和S通过运算得到关系T,则所使用的运算为()。
2020年全国计算机二级vfp全真模拟考试题库及答案(共四套)2020年全国计算机二级vfp全真模拟考试题及答案(一)1.下列叙述中正确的是( B ).A)线性表的链式存储结构与顺序存储结构所需要的存储空间是相同的B)线性表的链式存储结构所需要的存储空间一般要多于顺序存储结构C)线性表的链式存储结构所需要的存储空间一般要少于顺序存储结构D)线性表的链式存储结构与顺序存储结构在存储空间的需求上没有可比性【解析】线性链式存储结构中每个结点都由数据域与指针域两部分组成,增加了存储空间,所以一般要多于顺序存储结构.2.软件生命周期是指( A ).A)软件产品从提出、实现、使用维护到停止使用退役的过程B)软件从需求分析、设计、实现到测试完成的过程C)软件的开发过程 D)软件的运行维护过【解析】通常,将软件产品从提出、实现、使用维护到停止使用退役的过程称为软件生命周期.也就是说,软件产品从考虑其概念开始,到该软件产品不能使用为止的整个时期都属于软件生命周期.3.面向对象方法中,继承是指( D ).A)一组对象所具有的相似性质 B)一个对象具有另一个对象的性质C)各对象之间的共同性质 D)类之间共享属性和操作的机制【解析】继承是面向对象的方法的一个主要特征,是使用已有的类的定义作为基础建立新类的定义技术.广义的说,继承是指能够直接获得已有的性质和特征,而不必重复定义它们,所以说继承是指类之间共享属性和操作的机制.4.数据库设计中反映用户对数据要求的模式是( C ).A)内模式 B)概念模式 C)外模式 D)设计模式【解析】数据库系统的三级模式是概念模式、外模式和内模式.概念模式是数据库系统中全局数据逻辑结构的描述,是全体用户公共数据视图.外模式也称子模式或用户模式,它是用户的数据视图,给出了每个用户的局部数据描述,所以选择C).内模式又称物理模式,它给出了数据库物理存储结构与物理存取方法.5.扩展名为pjx的文件是( D ).A)数据库表文件 B)表单文件 C)数据库文件 D)项目文件【解析】扩展名为pjx的文件是项目文件;数据库表文件的扩展名是dbf;表单文件的扩展名是scx;数据库文件的扩展名是dbc.6.在Visual FoxPro中以下叙述正确的是( B ).A)关系也被称作表单 B)数据库表文件存储用户数据C)表文件的扩展名是.DBC D)多个表存储在一个物理文件中【解析】表是关系数据库的一个关系,而表单是Visual FoxPro提供的用于建立应用程序界面的最主要的工具之一,表单内可以包含命令按钮、文本框、列表框等各种界面元素,产生标准的窗口或对话框,所以表和表单是不同的概念,A)选项中关系也被称作表单的说法不正确,应该是被称作表;表文件是数据库中存储数据的载体,所以B)选项的说法正确;表文件的扩展名是DBF,而DBC是数据库库文件的扩展名,C)选项的说法不正确;在Visual FoxPro每个表都对应一个DBF文件,即都对应一个物理文件,所以一个数据库中的所有表文件存储在一个物理文件中的说法不正确.7.以下关于"视图"的描述正确的是( B ).A)视图保存在项目文件中 B)视图保存在数据库中C)视图保存在表文件中 D)视图保存在视图文件中【解析】视图是一个虚拟表.所谓虚拟,是因为视图的数据是从已有的数据库表或其他视图中抽象得来的,这些数据在数据库中并不实际存储,仅在其数据字典中存储视图的定义.但视图一经定义,就成为数据库的组成部分,可以像数据库表一样接受用户的查询.8.关闭表单的程序代码是ThisForm.Release,Release是( D ).A)表单对象的标题 B)表单对象的属性C)表单对象的事件 D)表单对象的方法【解析】在面向对象的概念中,属性用来表示对象的状态,方法用来描述对象的行为,事件是一种由系统预先定义而由用户或系统发出的动作,事件作用于对象,对象识别事件并作出相应反应.Release是将表单从内存中释放,它是表单的一种行为,所以它是表单对象的方法.9.Visual FoxPro是( B ).A)数据库系统 B)数据库管理系统 C)数据库 D)数据库应用系统【解析】数据库是存储在计算机存储设备上,结构化的相关数据的集合;数据库管理系统是对数据实行专门管理,提供安全性和完整性等统一机制,可以对数据的建立、使用、维护进行管理;数据库系统是指引进数据库技术后的计算机系统,实现有组织地、动态地存储大量相关数据,提供数据处理和信息资源共享的便利手段,数据库系统由硬件系统、数据库、数据库管理系统及相关软件、数据库管理员和用户等部分组成;数据库应用系统是由系统开发人员利用数据库系统资源开发出来的,面向某一类实际应用的软件系统;而Visual FoxPro系统作为对数据库进行建立、使用、维护的平台,它是一套数据库管理系统.10.下列程序段执行以后,内存变量y 的值是( B ).x=76543y=0DO WHILE x>0y=x%10+y*10x=int(x/10)ENDDOA)3456 B)34567 C)7654 D)7654311.下面程序计算一个整数的各位数字之和.在下划线处应填写的语句是( A ).SET TALK OFFINPUT "x=" TO xs=0DO WHILE x!=0s=s+MOD(x,10)ENDDO? sSET TALK ONA)x=int(x/10) B)x=int(x%10) C)x=x-int(x/10) D)x=x-int(x%10)【解析】MOD是取余函数,MOD(x,10)就是取x的个位数,因为本题是计算一个整数的各位数字之和,如果依次把x的各位移到个位数上,进行相加就可以实现了.Do循环中的第一条语句,即是计算个位数之和,所以第2条语句应该是将x的各位数字进行移动,而A)选项的语句是将x 的值除以10后取整,即可以实现将每位向右移动一位.12.命令SELECT 0的功能是( A ).A)选择编号最小的未使用工作区 B)选择0号工作区C)关闭当前工作区中的表 D)选择当前工作区【解析】在多工作区中,指定工作区的命令是:SELECT nWorkArea|cTableAlias,其中参数nWorkArea是一个大于等于0的数字,用于指定工作区号,最小的工作区号是1,最大的工作区号是32767,如果这里指定为0,则选择编号最小的可用工作区.13.有关ZAP命令的描述,正确的是( C ).A)ZAP命令只能删除当前表的当前记录B)ZAP命令只能删除当前表的带有删除标记的记录C)ZAP命令能删除当前表的全部记录D)ZAP命令能删除表的结构和全部记录【解析】使用ZAP命令可以物理删除表中的全部记录,不管是否有删除标记.该命令只是删除全部记录,并没有删除表,执行完该命令后表结构依然存在.14.下列程序段执行以后,内存变量X和Y的值是( C ).CLEARSTORE 3 TO XSTORE 5 TO YPLUS((X),Y)? X,YPROCEDURE PLUSPARAMETERS A1,A2A1=A1+A2A2=A1+A2ENDPROCA)8 13 B)3 13 C)3 5 D)8 5【解析】参数传递有按值传递和按引用传递两种方式,按值传递时,形参变量值的改变不会影响实参变量的取值;按引用传递时,当形参变量值改变时,实参变量值也随之改变.模块的调用格式有两种:格式1:使用DO命令,格式为DO <文件名>︱<过程名>.格式2:在文件名或过程名后面加一对小括号,格式为<文件名>︱<过程名>(),括号中包括若干个实参变量.本题采用的是利用格式2的方式调用模块程序,采用格式2调用模块程序时,默认情况下都以按值方式传递参数.如果实参是变量,可以通过SET UDFPARMS命令重新设置参数传递的方式,但是,需要注意的是,不论是设置何种传递方式,凡是用一对圆括号将一个变量括起来使其变成一般形式的表达式,总是按值传递,它不受SET UDFPARMS值的设置影响.本题中X和Y都是按值传递,形参值的变化不会影响到实参值,所以程序段执行以后X值等于3,Y值等于5.15.下列程序段执行以后,内存变量y的值是( D ).CLEARx=12345y=0DO WHILE x>0y=y+x%10x=int(x/10)ENDDO?yA)54321 B)12345 C)51 D)1516.假设"订单"表中有订单号、职员号、客户号和金额字段,如下SQL 命令可以正确执行的是( B ).A)SELECT 职员号 FROM 订单 GROUP BY 职员号 HAVING COUNT(*)>3 AND AVG_金额>200B)SELECT 职员号 FROM 订单GROUP BY 职员号 HAVING COUNT(*)>3AND AVG(金额)>200C)SELECT 职员号 FROM 订单 GROUP BY 职员号 HAVING COUNT(*)>3 WHERE AVG(金额)>200D)SELECT 职员号 FROM 订单 GROUP BY 职员号 WHERE COUNT(*)>3 AND AVG_金额>200【解析】查询是由SELECT和FROM短语构成的无条件查询,或由SELECT、FROM和WHERE短语构成的条件查询.其基本格式为:SELECT <字段名表>FROM <表名表>WHERE <条件>GROUP BY <字段>HAVING <条件>ORDER BY<字段>INTO DBF|TABLE |.GROUP BY语句用来分组,HAVING语句用来限定分组必须满足的条件.C)、D)选项格式错误.取字段的平均值应用"()"而非"_",所以本题选B).17.要使"产品"表中所有产品的单价上浮8%,正确的SQL命令是( D ).A)UPDATE产品 SET 单价=单价+单价*8% FOR ALLB)UPDATE产品 SET 单价=单价*1.08 FOR ALLC)UPDATE产品 SET 单价=单价+单价*8%D)UPDATE 产品 SET 单价=单价*1.08【解析】更新数据的命令格式为:UPDATE 表名 SET 字段名1=表达式1 [,字段名2=表达式2……] [WHERE 条件].一般使用WHERE子句指定更新的条件,并且一次可以更新多个字段;如果不使用WHERE子句,则更新全部记录.本题要使"产品"表中所有产品的单价上浮8%,应设置表达式为"单价=单价*1.08",即D)选项正确.18.假设同一名称的产品有不同的型号和产地,则计算每种产品平均单价的SQL命令是( D ).A)SELECT 产品名称, AVG(单价)FROM 产品 GROUP BY 单价B)SELECT 产品名称, AVG(单价)FROM 产品 ORDER BY 单价C)SELECT 产品名称, AVG(单价)FROM 产品 ORDER BY 产品名称D)SELECT 产品名称, AVG(单价)FROM 产品 GROUP BY 产品名称【解析】使用GROUP BY短语首先依据产品名称对产品进行分组,然后再计算每种产品的平均单价(AVG).ORDER BY短语则用来排序.本题D)选项正确.19.设有S(学号,姓名,性别)和SC(学号,课程号,成绩)两个表,如下SQL语句检索选修的每门课程的成绩都高于或等于85分的学生的学号、姓名和性别,正确的SQL命令是( D ).A)SELECT 学号,姓名,性别 FROM s WHERE EXISTS ( SELECT * FROM sc WHERE SC.学号= S.学号 AND成绩 <= 85 )B)SELECT 学号,姓名,性别 FROM s WHERE NOT EXISTS ( SELECT * FROM sc WHERE SC.学号= S.学号 AND成绩 <= 85 )C)SELECT 学号,姓名,性别 FROM s WHERE EXISTS (SELECT * FROM sc WHERE SC.学号= S.学号 AND成绩 > 85 )D)SELECT 学号,姓名,性别 FROM s WHERE NOT EXISTS ( SELECT * FROM sc WHERE SC.学号= S.学号 AND成绩 < 85 )【解析】本题考查内外层嵌套查询以及使用量词和谓词的查询.EXISTS是谓词,EXISTS或NOT EXISTS是用来检查在子查询中是否有结果返回,即存在元组或不存在元组.其本身并没有进行任何运算或比较,只用来返回子查询结果.本题要检索选修的每门课程的成绩都高于或等于85分的学生的学号、姓名和性别,SELECT * FROM sc WHERE SC.学号= S.学号 AND成绩 < 85已经筛选出成绩小于85分的所有记录,NOT EXISTS命令即返回高于或等于85分的记录,因此D)选项正确.20.从"订单"表中删除签订日期为2012年1月10日之前(含)的订单记录,正确的SQL命令是( C ).A)DROP FROM 订单 WHERE 签订日期<={^2012-1-10}B)DROP FROM 订单 FOR 签订日期<={^2012-1-10}C)DELETE FROM 订单 WHERE 签订日期<={^2012-1-10}D)DELETE FROM 订单 FOR 签订日期<={^2012-1-10}【解析】删除数据的命令格式为:DELETE FROM 表名 [WHERE 条件].首先排除A)、B)选项.WHERE指定被删除的记录所满足的条件,如果不使用WHERE子句,则删除该表中的全部记录.D)选项格式错误,所以本题选C).21.与"SELECT DISTINCT 产品号FROM 产品WHERE 单价>=ALL(SELECT 单价 FROM 产品 WHERE SUBSTR(产品号,1,1)="2")"等价的SQL命令是( A ).A)SELECT DISTINCT产品号FROM 产品WHERE 单价>=;(SELECT MAX(单价)FROM 产品 WHERE SUBSTR(产品号,1,1)="2")B)SELECT DISTINCT 产品号 FROM 产品 WHERE 单价>= ;(SELECTMIN(单价)FROM 产品 WHERE SUBSTR(产品号,1,1)="2")C)SELECT DISTINCT 产品号FROM 产品WHERE 单价>=ANY;(SELECT单价 FROM 产品 WHERE SUBSTR(产品号,1,1)="2") D)SELECT DISTINCT 产品号FROM 产品WHERE 单价>=SOME ;(SELECT单价 FROM 产品 WHERE SUBSTR(产品号,1,1)="2") 【解析】SUBSTR(<字符表达式>,<起始位置>[,<长度>])为取子串函数,从指定表达式值的指定起始位置取指定长度的子串作为函数值.DISTINCT语句用来去掉重复值.本题主要考察嵌套查询,与题目含义等价的应为A)选项.22.根据"产品"表建立视图myview,视图中含有包括了"产品号"左边第一位是"1"的所有记录,正确的SQL命令是( A ).A)CREATE VIEW myview AS SELECT * FROM 产品 WHERE LEFT(产品号,1)="1"B)CREATE VIEW myview AS SELECT * FROM 产品 WHERE LIKE("1",产品号)C)CREATE VIEW myview SELECT * FROM 产品 WHERE LEFT(产品号,1)="1"D)CREATE VIEW myview SELECT * FROM 产品 WHERE LIKE("1",产品号)【解析】使用CREATE VIEW命令可以创建一个视图,要求视图中含有包括了"产品号"左边第一位是"1"的所有记录,可使用SELECT命令.首先排除C)、D)选项,where指定的条件"WHERE LEFT(产品号,1)="1""正确,因此A)选项为正确选项.23.在项目管理器中,将一程序设置为主程序的方法是( C ).A)将程序命名为main B)通过属性窗口设置C)右键单击该程序从快捷菜单中选择相关项 D)单击修改按钮设置【解析】设置主程序有两种方法:①在项目管理器中选中要设置为主程序的文件,从主菜单的"项目"菜单或快捷菜单中选择"设置主文件"选项.项目管理器将应用程序的主文件自动设置为"包含",在编译完应用程序之后,该文件作为只读文件处理.②在"项目信息"的"文件"选项卡中选中要设置的主程序文件,右击鼠标,在弹出的快捷菜单中选择"设置主文件".在这种情况下,只有把文件设置为"包含"之后才能激活"设置文件"选项.即C)选项正确.24.假设在表单设计器环境下,表单中有一个文本框且已经被选定为当前对象.现在从属性窗口中选择Value属性,然后在设置框中输入:={^2001-9-10}-{^2001-8-20}.请问以上操作后,文本框Value 属性值的数据类型为( B ).A)日期型 B)数值型 C)字符型 D)布尔型【解析】两个日期型数据可以相减,结果是一个数值型的数据,表示两个日期相差的天数.因此本题B)25.表单里有一个选项按钮组,包含两个选项按钮Option1和Option2.假设Option2没有设置Click事件代码,而Option1以及选项按钮组和表单都设置了Click事件代码.那么当表单运行时,如果用户单击Option2,系统将( B ).A)执行表单的Click事件代码 B)执行选项按钮组的Click事件代码C)执行Option1的Click事件代码 D)不会有反应【解析】表单对象从创建到被释放的整个过程可以分为5个阶段:①装载阶段(Load事件);②对象生成阶段(Init事件);③交互操作阶段(如单击事件);④对象释放阶段(Destroy事件);⑤卸载阶段(Unload事件).本题没有设置Option2的Click事件代码,当单击时,优先触发选项按钮组的Click事件代码.B)选项正确.2020年全国计算机二级vfp全真模拟考试题及答案(二)1.下列叙述中正确的是( A ).A)顺序存储结构的存储一定是连续的,链式存储结构的存储空间不一定是连续的B)顺序存储结构只针对线性结构,链式存储结构只针对非线性结构C)顺序存储结构能存储有序表,链式存储结构不能存储有序表D)链式存储结构比顺序存储结构节省存储空间【解析】链式存储结构既可以针对线性结构也可以针对非线性结构,所以B)与C)错误.链式存储结构中每个结点都由数据域与指针域两部分组成,增加了存储空间,所以D)错误.2.在软件开发中,需求分析阶段可以使用的工具是( B ).A)N-S图 B)DFD图 C)PAD图 D)程序流程图【解析】在需求分析阶段可以使用的工具有数据流图DFD图,数据字典DD,判定树与判定表,所以选择B).3.在面向对象方法中,不属于"对象"基本特点的是( A ).A)一致性 B)分类性 C)多态性 D)标识唯一性【解析】对象有如下一些基本特点:标识唯一性、分类性、多态性、封装性、模块独立性好.所以选择A).4.设置文本框显示内容的属性是( A ).A)Value B)Caption C)Name D)InputMask【解析】文本框的Value属性是文本框的当前内容;Name属性指定在代码中用以引用对象的名称;InputMask属性指定在一个文本框中如何输入和显示数据;文本框无Caption属性.5.在Visual FoxPro中可以建立表的命令是( A ).A)CREATE B)CREATE DATABASE C)CREATE QUERY D)CREATE FORM【解析】用命令方式建立数据库表的是在命令窗口利用 OPEN DATA 命令先打开数据库,然后利用CREATE命令打开表设计器进行数据表设计.6.为了隐藏在文本框中输入的信息,用占位符代替显示用户输入的字符,需要设置的属性是( D ).A)Value B)ControlSource C)InputMask D)PasswordChar 【解析】文本框的Value属性是文本框的当前内容;ControlSource 属性为文本框指定一个字段或内存变量,运行时,文本框首先显示该变量的内容;InputMask属性指定在一个文本框中如何输入和显示数据;PasswordChar属性指定文本框控件内是显示用户输入的字符还是显示占位符;指定用作占位符的字符.7.假设某表单的Visible属性的初值为.F.,能将其设置为.T.的方法是( B ).A)Hide B)Show C)Release D)SetFocus【解析】表单的Hide方法用于隐藏表单,该方法将表单的Visible属性设置为.F.;Show方法用于显表单,该方法将表单的Visible属性值设为.T.,使之成为活动表单;Release方法用于从内存中释放表单;SetFocus方法让表单获得焦点,使其成为活动表单.所以符合此题的方法是Show.8.在Visual FoxPro中,编译或连编生成的程序文件的扩展名不包括( C ).A)APP B)EXE C)DBC D)FXP【解析】Visual FoxPro程序文件通过编译、连编,可以产生不同的目标代码文件,这些文件具有不同的扩展名:.exe(Visual FoxPro可执行文件),.app(Visual FoxPro应用程序文件)->.fxp(Visual FoxPro编译版本).9.如果有定义LOCAL data,data的初值是( D ).A)整数0 B)不定值 C)逻辑真 D)逻辑假【解析】声明局部变量的命令是:LOCAL <内存变量表>.该命令建立指定的局部内存变量,并为它们赋初值逻辑假.F..10.执行如下命令序列后,最后一条命令的显示结果是( C ).DIMENSION M(2,2)M(1,1)=10M(1,2)=20M(2,1)=30M(2,2)=40?M(2)A)变量未定义的提示 B)10 C)20 D) .F.【解析】创建数组的命令格式有两种DIMENSION <数组名> (<下标上限1>[,<下标上限2])[...]DECLARE <数组名> (<下标上限1>[,<下标上限2])[...]两种格式的功能完全相同.数组创建后,系统自动给每个数组元素赋以逻辑假.F..可以用一维数组的形式访问二维数组.本题中M(2)与M(1,2)是同一变量,所以M(2)的值为20.11.如果在命令窗口执行命令:LIST 名称,主窗口中显示:记录号名称1 电视机2 计算机3 电话线4 电冰箱5 电线假定名称字段为字符型、宽度为6,那么下面程序段的输出结果是( A ).GO 2SCAN NEXT 4 FOR LEFT(名称,2)="电"IF RIGHT(名称,2)="线"EXITENDIFENDSCAN名称A)电话线 B)电线 C)电冰箱 D)电视机【解析】LEFT(<字符表达式>,<数值表达式>)功能是从字符表达式左边开始,截取<数值表达式>指定长度的字符串.RIGHT(字符表达式, 数值表达式):返回一个字符串右边的若干字符,返回值是字符型.本题是从2、3、4、5四条记录中,找出第一个字是"电",最后一个字是"线"的第一个符合的记录,并显示出来,由此可知第3条记录"电话线"符合.12.在下面的Visual FoxPro表达式中,运算结果为逻辑真的是( B ).A)EMPTY(.NULL.) B)LIKE(′xy?′, ′xyz′)C)AT(′xy′, ′abcxyz′) D)ISNULL(SPACE(0))【解析】EMPTY(<表达式>)根据指定表达式的运算结果是否为"空"值,返回逻辑真(.T.)或逻辑假(.F.),这里所指的"空"值与NULL值是两个不同的概念,函数EMPTY(.NULL.)的返回值为逻辑假,所以A)选项为逻辑假;LIKE(<字符串表达式1>,<字符串表达式2>)比较两个字符串对应位置上的字符,若所有对应字符都相匹配,函数返回逻辑真,否则返回逻辑假,其中字符串表达式1中可包含通配符*和?,*表示若干个任意字符,?表示任意一个字符,所以LIKE(′xy?′, ′xyz′)为逻辑真;AT(<字符串表达式1>,<字符串表达式2>)的函数值为数值型,C)选项不正确;ISNULL(<表达式>)判断一个表达式的运算结果是否为NULL 值,若是NULL值则返回逻辑真,否则返回逻辑假,SPACE(<数值表达式>)返回由指定数目的空格组成的字符串,所以SPACE(0)为空字符串,ISNULL(SPACE(0) )为逻辑假.13.假设职员表已在当前工作区打开,其当前记录的"姓名"字段值为"李彤"(C型字段).在命令窗口输入并执行如下命令:姓名=姓名-"出勤"?姓名屏幕上会显示( A ).A)李彤 B)李彤出勤 C)李彤出勤 D)李彤-出勤【解析】C型字段即字符型字段,其表示方法是用半角单引号、双引号或方括号把字符串括起来,字符型变量的定界符必须成对匹配,如果某种定界符本身也是字符串的内容,则需要用另一种定界符为该字符串定界.本题输出结果为"李彤".14.设有学生选课表SC(学号,课程号,成绩),用SQL命令检索同时选修了课程号为"C1"和"C5"课程的学生的学号的正确命令是( D ).A)SELECT 学号 FROM SC WHERE 课程号= 'C1' AND 课程号= 'C5'B)SELECT 学号 FROM SC WHERE 课程号='C1' AND 课程号=(SELECT 课程号 FROM SC WHERE课程号= 'C5')C)SELECT 学号 FROM SC WHERE 课程号='C1' AND 学号=(SELECT 学号 FROM SC WHERE课程号= 'C5')D)SELECT 学号 FROM SC WHERE 课程号='C1' AND 学号 IN (SELECT 学号 FROM SC WHERE课程号= 'C5')【解析】这个查询不能用简单的查询实现,所以要用到嵌套查询,在嵌套查询中内外层的嵌套用IN而不用"=",D)选项正确.15.设有学生表S(学号,姓名,性别,年龄)、课程表C(课程号,课程名,学分)和学生选课表SC(学号,课程号,成绩),检索学号、姓名和学生所选课程的课程名和成绩,正确的SQL命令是( D ).A)SELECT 学号,姓名,课程名,成绩 FROM S,SC,C WHERE S.学号=SC.学号AND SC.学号= C.学号B)SELECT 学号,姓名,课程名,成绩 FROM (S JOIN SC ON S.学号=SC.学号)JOIN C ON SC.课程号= C.课程号C)SELECT S.学号,姓名,课程名,成绩 FROM S JOIN SC JOIN C ON S.学号= SC.学号ON SC.课程号= C.课程号D)SELECT S.学号,姓名,课程名,成绩 FROM S JOIN SC JOIN C ON SC.课程号= C.课程号 ON S.学号= SC.学号【解析】SQL是顺序执行命令语句,在多表联接查询时,各条件短语的执行顺序会影响到最终的查询结果.检索学号、姓名和学生所选课程的课程名和成绩,应为SELECT S.学号,姓名,课程名,成绩.A)、B)选项错误,而C)选项格式错误,选项D)正确.16.设有学生(学号,姓名,性别,出生日期)和选课(学号,课程号,成绩)两个关系,计算刘明同学选修的所有课程的平均成绩,正确的SQL语句是( D ).A)SELECT AVG(成绩)FROM 选课 WHERE 姓名="刘明"B)SELECT AVG(成绩)FROM 学生,选课 WHERE 姓名="刘明"C)SELECT AVG(成绩)FROM 学生,选课 WHERE 学生.姓名="刘明"D)SELECT AVG(成绩)FROM 学生,选课 WHERE 学生.学号=选课.学号AND 姓名="刘明"【解析】SQL的核心是查询,它的基本形式由SELECT-FROM-WHERE查询块组成.其中SELECT说明要查询的字段,FROM说明要查询的字段来自哪个表或哪些表,可以对单个表或多个表进行查询,WHERE说明查询条件,即选择元组的条件.要计算刘明同学选修的所有课程的平均成绩,应设置where条件为WHERE 学生.学号=选课.学号 AND 姓名="刘明",即D)选项正确.17.设有学生(学号,姓名,性别,出生日期)和选课(学号,课程号,成绩)两个关系,并假定学号的第3、4位为专业代码.要计算各专业学生选修课程号为"101"课程的平均成绩,正确的SQL语句是( B ).A)SELECT 专业 AS SUBS(学号,3,2),平均分 AS AVG (成绩)FROM 选课 WHERE 课程号="101" GROUP BY 专业B) SELECT SUBS(学号,3,2)AS 专业, AVG(成绩)AS 平均分 FROM 选课 WHERE 课程号="101" GROUP BY 1C) SELECT SUBS(学号,3,2)AS 专业, AVG(成绩)AS 平均分 FROM 选课 WHERE 课程号="101" ORDER BY 专业D) SELECT专业 AS SUBS(学号,3,2),平均分 AS AVG (成绩)FROM 选课 WHERE 课程号="101" ORDER BY 1【解析】SUBSTR(<字符表达式>,<起始位置>[,<长度>])为取子串函数,从指定表达式值的指定起始位置取指定长度的子串作为函数值.要计算各专业学生选修课程号为"101"课程的平均成绩,应按学号分组,即GROUP BY 1.因此B)为正确选项.18.设有学生(学号,姓名,性别,出生日期)和选课(学号,课程号,成绩)两个关系,查询选修课程号为"101"课程得分最高的同学,正确的SQL 语句是( D ).A)SELECT 学生.学号,姓名 FROM 学生,选课 WHERE 学生.学号=选课.学号 AND 课程号="101" AND 成绩>=ALL(SELECT 成绩 FROM 选课)B)SELECT 学生.学号,姓名 FROM 学生,选课 WHERE 学生.学号=选。
2020年9月全国计算机等级考试二级Foxpro笔试模拟试题及答案一、选择题((1)~( 40)每题1分,(41)~(50)每题2分,共60分)(1)在计算机中,一个字节所包含二进制位的个数是A)2 B)4 C)8 D)16(2)在多媒体计算机中,CD-ROM属示媒体于A)存储媒体 B)传输媒体 C)表现媒体 D)表(3)在DOS系统中,带有通配符的文件名*.*表示A)硬盘上的全部文件 B)当前盘当前目录中的全部文件C)当前盘上的全部文件 D)根目录中的全部文件(4)十六进制数100转换为十进制数为A)256 B)512C)1024 D)64(5)能将高级语言编写的源程序转换为目标程序的软件是A)汇编程序 B)编辑程序 C)解释程序 D)编译程序(6)在Internet中,用于在计算机之间传输文件的协议是A)TELNET B)BBS C)FTP D)WWW(7)在Windows环境下,资源管理器左窗口中的某文件夹左边标有"+"标记表示A)该文件夹为空 B)该文件夹中含有子文件夹C)该文件夹中只包含有可执行文件 D)该文件夹中包含系统文件(8)在Windows环境下,下列叙述中正确的是A)在"开始"菜单中可以增加项目,也可以删除项目B)在"开始"菜单中不能增加项目,也不能删除项目C)在"开始"菜单中可以增加项目,但不能删除项目D)在"开始"菜单中不能增加项目,但可以删除项目(9)从Windows环境进入DOS方式后,返回Windows环境的命令为A)QUIT B)WIN C)EXIT D)ESC(10)下列叙述中正确的是A)计算机病毒只感染可执行文件 B)计算机病毒只感染文本文件C)计算机病毒只能通过软件复制的方式进行传播D)计算机病毒可以通过读写磁盘或网络等方式进行传播(11)一个关系是一张二维表。
2020年大学计算机二级考试试题二包含答案一、请按要求!(共100题,每题1分,共100分)1、以下所列的各函数首部中,正确的是()。
A.void play(var a:integer,var b:integer)B.void play(int a, b)play (int a,int b)D・ sub play(a as integer, b as integer)2、在ios系统里,文件夹是( )A.一种整理邮件的方法B.Photo应用程序中的一种幻灯片过度方式C.一种在主屏幕上整理应用程序的方法D.一种储存空间的名称3、在因特网中、各计算机之间使用( )协议交换信息。
A. E-mailB・ WordIPD. FoxPro4、在操作系统中,()指的是一种硬件机制。
8、Internet最初是由()建立的。
A.通道技术B.缓冲池技术D.内存覆盖技术5、在Word编辑状态,可以使插入点快速移到文档首部的组合键是()A.Ctrl+HomeB.Alt+HomeD・ PageUp6、关于网络协议,下列()选项是正确的。
A.是网民们签订的合同B.协议,简单的说就是为了网络信息传递,共同遵守的约定IP协议只能用F Internet,不能用丁-局域网D.拔号网络对应的协议是IPX/SPX7、下面哪个不是系统功能调用的功能()。
A.文件管理B.设备管理C.作业管理D.总线管理8、Internet 最初是由( )建立的。
A. Intel 公 njB. Apple 公司公司D.美国国防部9、从键盘上输入一个实数nu,利用字符串函数对该数进行处理,如果输出的内容不是字符End,则 程序输出的内容是()Onu=InputBox ("nu 二")n$=Str$(nu)p=InStr(n$» "・")If p>0 ThenPrint Mid$(nS t p)ElsePrint "END"End If A. 用字符方式输出数据nuB. 输出数据的整数部分C. 输出数据的小数部分D. 只去掉数据中的小数点,保留所有数字输出B. 软件工程时代10、在软件生产的(A.程序系统时代),使用的工具主耍是机器语言和汇编语言C.面向对象时代D.人工智能时代11、在Java中,若要使用一个包中的类时,首先要求对该包进行导入,其关键字是:A.importB.packageD・ packet12^ 程序段s=i=0; do {i=i+l; s=s+i; }while(i<=n):的时间复杂度为()。
2020年国家计算机二级考试模拟考试训练题库及答案(共250题)1、FTP是因特网上最早使用的文件传输程序,使用FTP不能____。
A、查看文件B、文件目录操作C、下载文件D、运行文件2、WWW是一种建立在Internet上的全球性的、交互的、动态、多平台、分布式的图形信息系统,它的最基本的概念是____。
A、HypertextB、TextC、FileD、Multimedia3、单击浏览器中工具栏上的“HOME”则____。
A、直接连接微软的主页B、直接连接Netscape的主页C、用户定义的主页上D、返回到上一次连接的主页4、下列有关WWW的叙述不正确的是____。
A、它是基于一种称为Hypertext的技术B、在Hypertext文档中有一些指向另一些文档和资源的指针C、通过这些指针将Internet上的丰富资源连接在一起D、不采用客户朋务器(Client/Server)方式5、Internet上有许多应用,其中主要用来浏览网页信息的是____。
A、E-mailB、FI?C、TelnetD、WWW6、Word文档的扩展名是____。
A、.pptB、.txtC、.xslD、.doc7、保存Word文件的快捷键是_____。
A、Ctr1+VB、Ctr1+XC、Ctr1+SD、Ctr1+O8、在word 中,选择“文件”菜单下的“另存为”命令,可以将当前打开的文档另存为的文档类型是____。
A、.txtB、.pptC、.xlsD、.bat9、关于word 中的多文档窗口操作,以下叙述中错误的是_____A、文档窗口可以拆分为两个文档窗口B、多个文档编辑工作结束后,只能一个一个地存盘或关闭文档窗口C、允许同时打开多个文档进行编辑,每个文档有一个文档窗口D、多文档窗口间的内容可以进行前切、粘贴和复制等操作10、在word编辑状态下,若要将另一文档的内容全部添加在当前文档插入点处,应该选择的操作是____。
2020年全国计算机二级等级考试模拟试卷及答案(共五套)2020年全国计算机二级等级考试模拟试卷及答案(第一套)1. 下列关于栈叙述正确的是()。
A) 算法就是程序B) 设计算法时只需要考虑数据结构的设计C) 设计算法时只需要考虑结果的可靠性D) 以上三种说法都不对参考答案:D2. 下列叙述中正确的是()。
A) 有一个以上根结点的数据结构不一定是非线性结构B) 只有一个根结点的数据结构不一定是线性结构C) 循环链表是非线性结构D) 双向链表是非线性结构参考答案:B3. 下列关于二叉树的叙述中,正确的是()。
A) 叶子结点总是比度为2的结点少一个B) 叶子结点总是比度为2的结点多一个C) 叶子结点数是度为2的结点数的两倍D) 度为2的结点数是度为1的结点数的两倍参考答案:B4. 软件生命周期中的活动不包括()。
A) 市场调研B) 需求分析C) 软件测试D) 软件维护参考答案:A5. 某系统总体结构图如下图所示:该系统总体结构图的深度是()。
A) 7B) 6C) 3D) 2参考答案:C6. 程序调试的任务是()。
A) 设计测试用例B) 验证程序的正确性C) 发现程序中的错误D) 诊断和改正程序中的错误参考答案:D7. 下列关于数据库设计的叙述中,正确的是()。
A) 在需求分析阶段建立数据字典B) 在概念设计阶段建立数据字典C) 在逻辑设计阶段建立数据字典D) 在物理设计阶段建立数据字典参考答案:A8. 数据库系统的三级模式不包括()。
A) 概念模式B) 内模式.C) 外模式D) 数据模式参考答案:D9有三个关系R、S和T如下:则由关系R和S得到关系T的操作是( )。
A) 自然连接B) 交C) 投影D) 并参考答案:A10. 下列选项中属于面向对象设计方法主要特征的是()。
A) 继承B) 自顶向下C) 模块化D) 逐步求精参考答案:A11.以下叙述中错误的是A) 算法正确的程序可以有零个输入B) 算法正确的程序最终一定会结束C) 算法正确的程序可以有零个输出D) 算法正确的程序对于相同的输入一定有相同的结果参考答案:C12. 以下叙述中正确的是A) C语句必须在一行内写完B) C程序中的每一行只能写一条语句C) C语言程序中的注释必须与语句写在同一行D) 简单C语句必须以分号结束参考答案:D13. 以下选项中关于C语言常量的叙述错误的是A) 经常被使用的变量可以定义成常量B) 常量分为整型常量、实型常量、字符常量和字符串常量C) 常量可分为数值型常量和非数值型常量D) 所谓常量,是指在程序运行过程中,其值不能被改变的量参考答案:A14. 以下选项中,不合法的C语言用户标识符是A) a_bB) AaBcC) a--bD) _1参考答案:C15. 若变量均已正确定义并赋值,以下合法的C语言赋值语句是A) x=y==5;B) x=n%2.5;C) x+n=i;D) x=5=4+1;参考答案:A16. 设有定义:int a; float b;执行scanf("%2d%f", &a, &b);语句时,若从键盘输入876 543.0<回车>则a和b的值分别是A) 87和6.0B) 876和543.0C) 87和543.0D) 76和543.0参考答案:A17. 有以下定义语句,编译时会出现编译错误的是A) char a='\x2d';B) char a='\n';C) char a='a';D) char a="aa";参考答案:D18. 当变量c的值不为2、4、6时,值也为"真"的表达式是A) (c>=2 && c<=6)&&(c%2!=1)B) (c==2)||(c==4)||(c==6)C) (c>=2 && c<=6)&& !(c%2)D) (c>=2 && c<=6) || (c!=3) || (c!=5)参考答案:D19. 有以下计算公式若程序前面已在命令行中包含math.h文件,不能够正确计算上述公式的程序段是A) if(x>=0) y=sqrt(x);if(x<0) y=sqrt(-x);B) if(x>=0) y=sqrt(x);else y=sqrt(-x);C) y=sqrt(x);if(x<0) y=sqrt(-x);D) y=sqrt(x>=0?x :-x);参考答案:C20. 有以下程序#include <stdio.h>main(){ int y=10;while(y--);printf("y=%d\n",y);}程序执行后的输出结果是A) y=-1B) y=0C) y=1D) while构成无限循环参考答案:A21. 有以下程序#include <stdio.h>main(){ int i;for(i=1; i<=40; i++){ if(i++%5==0)if(++i%8==0) printf("%d ",i);}printf("\n");}执行后的输出结果是A) 5B) 24C) 32D) 40参考答案:C22. 有以下程序#include <stdio.h>main(){ int s;scanf("%d", &s);while( s>0 ){ switch(s){ case 1: printf("%d", s+5);case 2: printf("%d", s+4); break;case 3: printf("%d", s+3);default: printf("%d", s+1); break;}scanf("%d", &s);}}运行时,若输入1 2 3 4 5 0<回车>,则输出结果是A) 66656B) 6566456C) 66666D) 6666656参考答案:B23. 以下叙述中错误的是A) 用户定义的函数中可以没有return语句B) 用户定义的函数中可以有多个return语句,以便可以调用一次返回多个函数值C) 用户定义的函数中若没有return语句,则应当定义函数为void类型D) 函数的return语句中可以没有表达式参考答案:B24. 有以下程序#include <stdio.h>void fun(char *c,int d){ *c=*c+1;d=d+1;printf("%c,%c,",*c,d);}main(){ char b='a',a='A';fun(&b,a);printf("%c,%c\n",b,a);}程序运行后的输出结果是A) b,B,b,AB) b,B,B,AC) a,B,B,aD) a,B,a,B参考答案:A25. 列选项中,能正确定义数组的语句是A) int num[0...2008];B) int num[];C) int N=2008;int num[N];D) #define N 2008int num[N];参考答案:D26. 以下函数实现按每行8个输出w所指数组中的数据#include <stdio.h>void fun( int *w, int n){ int i;for(i=0;i<n;i++){ ______________printf("%d ",w[i]);}printf("\n");}在横线处应填入的语句是A) if( i/8==0 ) printf("\n");B) if( i/8==0 ) continue;C) if( i%8==0 ) printf("\n");D) if( i%8==0 ) continue;参考答案:C27. 有以下程序#include <stdio.h>void fun (char *c){while(*c){if( *c >= 'a' && *c <= 'z')*c =*c - ('a' - 'A');c++;}}main(){char s[81];gets(s);fun(s);puts(s);}当执行程序时从键盘上输入Hello Beijing<回车>,则程序的输出结果是A) hello beijingB) Hello BeijingC) HELLO BEIJINGD) hELLO Beijing参考答案:C28. 有以下程序#include <stdio.h>main(){int a[4][4]={{1,4,3,2},{8,6,5,7},{3,7,2,5},{4,8,6,1}};int i, j, k, t;for (i=0; i<4; i++)for (j=0; j<3; j++)for (k=j+1; k<4; k++)if (a[j][i] > a[k][i]){t=a[j][i];a[j][i] = a[k][i];a[k][i] = t;} /* 按列排序*/for (i=0; i<4; i++)printf("%d, ",a[i][i]);}程序运行后的输出结果是A) 1, 6, 2, 1,B) 8, 7, 3, 1,C) 4, 7, 5, 2,D) 1, 6, 5, 7,参考答案:D29. 有以下程序(strcat函数用以连接两个字符串)#include <stdio.h>#include <string.h>main(){char a[20]="ABCD\0EFG\0",b[]="IJK";strcat(a,b);printf("%s\n",a);}程序运行后的输出结果是A) IJKB) ABCDE\0FG\0IJKC) ABCDIJKD) EFGIJK参考答案:C30. 有以下程序段char name[20];int num;scanf("name=%s num=%d",name, &num);当执行上述程序段,并从键盘输入:name=Lili num=1001<回车>后,name的值为A) name=Lili num=1001B) name=LiliC) Lili num=D) Lili参考答案:D31. 有以下程序#include <stdio.h>main(){char ch[ ] ="uvwxyz",*pc;pc=ch;printf("%c\n", *(pc+5));}程序运行后的输出结果是A) zB) 0C) 元素ch[5]的地址D) 字符y的地址参考答案:A32. 有以下程序#include <stdio.h>main(){char s[]={"012xy"};int i,n=0;for(i=0;s[i]!=0;i++)if(s[i]>='a'&&s[i]<='z')n++;printf("%d\n",n);}程序运行后的输出结果是A) 0B) 2C) 3D) 5参考答案:B33. 有以下程序#include <stdio.h>int fun(int n){if(n==1)return 1;elsereturn(n+fun(n-1));}main(){int x;scanf("%d",&x);x=fun(x);printf("%d\n",x);}执行程序时,给变量x输入10,程序的输出结果是A) 55B) 54C) 65D) 45参考答案:A34. 有以下程序#include <stdio.h>int f ( int m ){ static int n=0;n+=m;return n;}main(){ int n=0;printf ( "%d,", f(++n) );printf ( "%d\n", f(n++) );}程序运行后的输出结果是A) 3,3B) 1,1C) 2,3D) 1,2参考答案:D35. 设有以下语句typedef struct TT{ char c; int a[4]; } CIN;则下面叙述中正确的是A) CIN是struct TT类型的变量B) TT是struct类型的变量C) 可以用TT定义结构体变量D) 可以用CIN定义结构体变量参考答案:D36. 有以下程序#include <stdio.h>struct ord{ int x,y; } dt[2]={1,2,3,4}; main(){struct ord *p=dt;printf("%d,",++(p->x));printf("%d\n",++(p->y));}程序运行后的输出结果是A) 3,4B) 4,1C) 2,3D) 1,2参考答案:C37. 有以下程序#include <stdio.h>#define SUB(a) (a)-(a)main(){ int a=2,b=3,c=5,d;d=SUB(a+b)*c;printf("%d\n",d);}程序运行后的输出结果是A) 0B) -12C) -20D) 10参考答案:C38. 有以下程序#include <stdio.h>main(){ int a=2, b;b = a<<2;printf ("%d\n", b );}程序运行后的输出结果是A) 2B) 4C) 6D) 8参考答案:D39. 下列关于C语言文件的叙述中正确的是A) 文件由一系列数据依次排列组成,只能构成二进制文件B) 文件由结构序列组成,可以构成二进制文件或文本文件C) 文件由数据序列组成,可以构成二进制文件或文本文件D) 文件由字符序列组成,其类型只能是文本文件参考答案:C40. 有以下程序#include <stdio.h>main(){ FILE *fp;int a[10]={1,2,3,0,0}, i;fp = fopen("d2.dat", "wb");fwrite(a, sizeof(int), 5, fp);fwrite(a, sizeof(int), 5, fp);fclose(fp);fp = fopen("d2.dat", "rb");fread(a, sizeof(int), 10, fp);fclose(fp);for (i=0; i<10; i++)printf("%d,", a[i]);}程序的运行结果是A) 1,2,3,0,0,0,0,0,0,0,B) 1,2,3,1,2,3,0,0,0,0,C) 123,0,0,0,0,123,0,0,0,0,D) 1,2,3,0,0,1,2,3,0,0,参考答案:D2020年全国计算机二级等级考试模拟试卷及答案(第二套)1.一个栈的初始状态为空。
2020年3月全国计算机等级考试二级笔试模拟试卷及答案一、选择题(每小题2分,共70分)下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。
(1)下列叙述中正确的是DA)栈是“先进先出”的线性表 B)队列是“先进后出”的线性表C)循环队列是非线性结构D)有序线性表既可以采用顺序存储结构,也可以采用链式存储结构(2)支持子程序调用的数据结构是A)栈 B)树 C)队列 D)二叉树(3)某二叉树有5个度为2的结点,则该二叉树中的叶子结点数是A)10 B)8 C)6 D)4(4)下列排序方法中,最坏情况下比较次数最少的是A)冒泡排序 B)简单选择排序 C)直接插入排序 D)堆排序(5)软件按功能可以分为:应用软件、系统软件和支撑软件(或工具软件)。
下面属于应用软件的是AA)编译程序 B)操作系统 C)教务管理系统 D)汇编程序(6)下面叙述中错误的是AA)软件测试的目的是发现错误并改正错误B)对被调试的程序进行“错误定位”是程序调试的必要步骤C)程序调试通常也称为DebugD)软件测试应严格执行测试计划,排除测试的随意性(7)耦合性和内聚性是对模块独立性度量的两个标准。
下列叙述中正确的是A)提高耦合性降低内聚性有利于提高模块的独立性B)降低耦合性提高内聚性有利于提高模块的独立性C)耦合性是指一个模块内部各个元素间彼此结合的紧密程度D)内聚性是指模块间互相连接的紧密程度(8)数据库应用系统中的核心问题是A)数据库设计 B)数据库系统设计C)数据库维护 D)数据库管理员培训(9)有两个关系R,S如下:R SA B C A B a 3 2 a 3 b 0 1 b 0 c 21 c 2由关系R通过运算得到关系S,则所使用的运算为BA)选择 B)投影 C)插入 D)连接(10)将E-R图转换为关系模式时,实体和联系都可以表示为A)属性 B)键 C)关系 D)域(11)数据库(DB)、数据库系统(DBS)和数据库管理系统(DBMS)三者之间的关系是 A A)DBS包括DB和DBMS B)DBMS包括DB和DBSC)DB包括DBS和DBMS D)DBS就是DB,也就是DBMS (12)SQL语言的查询语句是DA)INSERT B)UPDATE C)DELETE D)SELECT (13)下列与修改表结构相关的命令是BA)INSERT B)ALTER C)UPDATE D)CREATE (14)对表SC(学号 C(8),课程号 C(2),成绩 N(3),备注 C(20)),可以插入的记录是BA)('20080101', 'c1', '90',NULL) B)('20080101', 'c1', 90, '成绩优秀')C)('20080101', 'c1', '90', '成绩优秀') D)('20080101', 'c1', '79', '成绩优秀')(15)在表单中为表格控件指定数据源的属性是A)DataSource B)DataFrom C)RecordSource D)RecordFrom(16)在Visual FoxPro中,下列关于SQL表定义语句(CREATE TABLE)的说法中错误的是DA)可以定义一个新的基本表结构 B)可以定义表中的主关键字C)可以定义表的域完整性、字段有效性规则等D)对自由表,同样可以实现其完整性、有效性规则等信息的设置(17)在Visual FoxPro中,若所建立索引的字段值不允许重复,并且一个表中只能创建一个,这种索引应该是AA)主索引 B)唯一索引 C)候选索引 D)普通索引(18)在Visual FoxPro中,用于建立或修改程序文件的命令是B A)MODIFY<文件名> B)MODIFY COMMAND <文件名>C)MODIFY PROCEDURE <文件名> D)上面B和C都对(19)在Visual FoxPro中,程序中不需要用PUBLIC等命令明确声明和建立,可直接使用的内存变量是A)局部变量 B)私有变量 C)公共变量 D)全局变量(20)以下关于空值(NULL值)叙述正确的是CA)空值等于空字符串 B)空值等同于数值0C)空值表示字段或变量还没有确定的值 D)Visual FoxPro不支持空值(21)执行USE sc IN 0命令的结果是BA)选择0号工作区打开sc表 B)选择空闲的最小号工作区打开sc表C)选择第1号工作区打开sc表 D)显示出错信息(22)在Visual FoxPro中,关系数据库管理系统所管理的关系是B A)一个DBF文件 B)若干个二维表C)一个DBC文件 D)若干个DBC文件(23)在Visual FoxPro中,下面描述正确的是AA)数据库表允许对字段设置默认值B)自由表允许对字段设置默认值C)自由表或数据库表都允许对字段设置默认值D)自由表或数据库表都不允许对字段设置默认值(24)SQL的SELECT语句中,“HAVING<条件表达式>”用来筛选满足条件的DA)列 B)行 C)关系 D)分组(25)在Visual FoxPro中,假设表单上有一个选项组:,初始时该选项组的Value属性值为1。
2020年全国计算机二级等级考试全真模拟试卷及答案(第二套)1. 下列叙述中正确的是A) 一个算法的空间复杂度大,则其时间复杂度也必定大B) 一个算法的空间复杂度大,则其时间复杂度必定小C) 一个算法的时间复杂度大,则其空间复杂度必定小D) 算法的时间复杂度与空间复杂度没有直接关系参考答案:D2. 下列叙述中正确的是A) 循环队列中的元素个数随队头指针与队尾指针的变化而动态变化B) 循环队列中的元素个数随队头指针的变化而动态变化C) 循环队列中的元素个数随队尾指针的变化而动态变化D) 以上说法都不对参考答案:A3. 棵二叉树中共有80个叶子结点与70个度为1的结点,则该二叉树中的总结点数为A) 219B) 229C) 230D) 231参考答案:B4. 对长度为10的线性表进行冒泡排序,最坏情况下需要比较的次数为A) 9B) 10C) 45D) 90参考答案:C5. 构成计算机软件的是A) 源代码B) 程序和数据C) 程序和文档D) 程序、数据及相关文档参考答案:D6. 软件生命周期可分为定义阶段、开发阶段和维护阶段,下面不属于开发阶段任务的是A) 测试B) 设计C) 可行性研究D) 实现参考答案:C7. 下面不能作为结构化方法软件需求分析工具的是A) 系统结构图B) 数据字典(DD)C) 数据流程图(DFD图)D) 判定表参考答案:A8. 在关系模型中,每一个二维表称为一个A) 关系B) 属性C) 元组D) 主码(键)参考答案:A9. 若实体A和B是一对多的联系,实体B和C是一对一的联系,则实体A 和C的联系是A) 一对一B) 一对多C) 多对一D) 多对多参考答案:B10.A) 选择B) 投影C) 交D) 并参考答案:D11. 以下叙述中正确的是A) C语言程序所调用的函数必须放在main函数的前面B) C语言程序总是从最前面的函数开始执行C) C语言程序中main函数必须放在程序的开始位置D) C语言程序总是从main函数开始执行参考答案:D12. C语言程序中,运算对象必须是整型数的运算符是A) &&B) /C) %D) *参考答案:C13. 有以下程序#include <stdio.h>main(){int sum, pad, pAd;sum = pad = 5;pAd = ++sum, pAd++, ++pad;printf("%d\n", pad );}程序的输出结果是A) 5B) 6C) 7D) 8参考答案:B14. 有以下程序#include <stdio.h>main(){int a=3;a+=a-=a*a;printf( "%d\n", a );}程序的输出结果是A) 0B) 9C) 3D) -12参考答案:D15. sizeof( double )是A) 一个整型表达式B) 一个双精度型表达式C) 一个不合法的表达式D) 一种函数调用参考答案:A16. 有以下程序#include <stdio.h>main(){int a=2, c=5;printf( "a=%%d,b=%%d\n", a,c );}程序的输出结果是A) a=2,b=5B) a=%2,b=%5C) a=%d,b=%dD) a=%%d,b=%%d参考答案:C17. 若有定义语句:char a='\82';则变量aA) 说明不合法B) 包含1个字符C) 包含2个字符D) 包含3个字符参考答案:A18. 有以下程序#include <stdio.h>main(){char c1='A', c2='Y';printf( "%d, %d\n", c1,c2 );}程序的输出结果是A) 输出格式不合法,输出出错信息B) 65,89C) 65,90D) A,Y参考答案:B19. 若变量已正确定义for( x=0,y=0; ( y!=99 && x<4 ); x++ )则以上for循环A) 执行3次B) 执行4次C) 执行无限次D) 执行次数不定参考答案:B20. 对于while(!E) s; ,若要执行循环体s,则E的取值应为:A) E等于1B) E不等于0C) E不等于1D) E等于0参考答案:D21. 有以下程序#include <stdio.h>main(){int x;for( x=3; x<6; x++ )printf( (x%2 ) ? ("*%d") :("#%d"),x);printf("\n");}程序的输出结果是A) *3#4*5B) #3*4#5C) *3*4#5D) *3#4#5参考答案:A22. 有以下程序#include <stdio.h>main(){ int a, b;for( a=1,b=1; a<=100; a++ ){ if(b>=20) break;if(b % 3==1) { b=b+3; continue; }b=b-5;}printf("%d\n",a);}程序的输出结果是A) 10B) 9C) 8D) 7参考答案:B23. 有以下程序#include <stdio.h>void fun( int x, int y, int *c, int *d ){ *c = x+y; *d = x-y; }main(){ int a=4, b=3, c=0, d=0;fun ( a, b, &c, &d );printf( "%d %d\n" , c, d );}程序的输出结果是A) 0 0B) 4 3C) 3 4D) 7 1参考答案:D24. 有以下程序#include <stdio.h>void fun( int *p, int *q ){ int t;t = *p; *p = *q; *q=t;*q = *p;}main(){ int a=0, b=9;fun ( &a, &b );printf( "%d %d\n" , a,b );}程序的输出结果是A) 9 0C) 9 9D) 0 9参考答案:C25. 有以下程序#include <stdio.h>main(){ int a[ ]={ 2,4,6,8,10 }, x, *p, y=1;p = &a[1];for( x=0; x<3; x++ ) y += *(p+x);printf( "%d\n",y );}程序的输出结果是A) 13B) 19C) 11D) 15参考答案:B26. 有以下程序#include <stdio.h>main()int i, x[3][3] = { 1,2,3,4,5,6,7,8,9 };for( i=0; i<3; i++ )printf( "%d ", x[i][2-i] );printf( "\n" );}程序的输出结果是A) 1 5 0B) 3 5 7C) 1 4 7D) 3 6 9参考答案:B27. 设有某函数的说明为int* func(int a[10], int n);则下列叙述中,正确的是A) 形参a对应的实参只能是数组名B) 说明中的a[10]写成a[]或*a效果完全一样C) func的函数体中不能对a进行移动指针(如a++)的操作D) 只有指向10个整数内存单元的指针,才能作为实参传给a参考答案:B28. 有以下程序#include <stdio.h>char fun( char *c ){if ( *c<='Z' && *c>='A' )*c -= 'A'-'a';return *c;}main(){char s[81], *p=s;gets( s );while( *p ){*p =fun( p );putchar( *p );p++;}printf( "\n");}若运行时从键盘上输入OPEN THE DOOR<回车>,程序的输出结果是A) OPEN THE DOORB) oPEN tHE dOORC) open the doorD) Open The Door参考答案:C29. 设有定义语句:char *aa[2]={ "abcd","ABCD"};则以下叙述正确的是A) aa[0]存放了字符串"abcd"的首地址B) aa数组的两个元素只能存放含有4个字符的一维数组的首地址C) aa数组的值分别是字符串"abcd"和"ABCD"D) aa是指针变量,它指向含有两个元素的字符型数组参考答案:A30. 有以下程序#include <stdio.h>int fun( char *s ){ char *p=s;while (*p !=0 ) p++;return ( p-s );}main(){ printf( "%d\n", fun( "goodbey!" ) ); }程序的输出结果是A) 0B) 6C) 7D) 8参考答案:C31. 有以下程序#include <stdio.h>int fun( int n ){ int a;if( n==1 ) return 1;a = n + fun( n-1 );return ( a );}main(){ printf( "%d\n", fun( 5 ) ); }程序的输出结果是A) 9C) 10D) 15参考答案:D 32. 有以下程序#include <stdio.h>int d=1;void fun( int p ) {int d=5;d += p++;printf("%d ", d ); }main(){int a=3;fun( a );d += a++;printf("%d\n",d); }程序的输出结果是B) 9 6C) 9 4D) 8 5参考答案:A 33. 有以下程序#include <stdio.h>int fun(intA){int b=0;static int c=3;a =( c++,b++);return ( a );}main(){int a = 2, i, k;for( i=0; i<2; i++ )k = fun(a++);printf( "%d\n",k ); }程序的输出结果是A) 4B) 0C) 1D) 2参考答案:B34. 有以下程序#include <stdio.h>main(){ char c[2][5]={ "6934", "8254" },*p[2] ;int i, j, s=0;for( i=0; i<2; i++ ) p[i]=c[i];for( i=0; i<2; i++ )for( j=0; p[i][j]>0 && p[i][j]<='9'; j+=2 )s = 10*s + p[i][j] - '0';printf( "%d\n" ,s );}程序的输出结果是A) 693825B) 69825C) 63825D) 6385参考答案:D35. 有以下程序#include <stdio.h>#define SQR(X) X*Xmain(){int a=10, k=2, m=1;a /= SQR(k+m)/SQR(k+m);printf("%d\n",a);}程序的输出结果是A) 0B) 1C) 9D) 10参考答案:B36. 有以下程序#include <stdio.h>main(){ char x=2, y=2, z;z=( y<<1 )&( x>>1 );printf( "%d\n",z );}程序的输出结果是A) 1B) 0C) 4D) 8参考答案:B37. 有以下程序#include <stdio.h>struct S{ int a;int b; };main(){ struct S a, *p=&a;a.a=99;printf( "%d\n" , __________ );}程序要求输出结构体中成员a的数据,以下不能填入横线处的内容是A) a.aB) *p.aC) p->aD) (*p).a参考答案:B38. 有以下程序#include <stdio.h>#include <stdlib.h>void fun( double *p1,double *p2,double *s){ s = (double *)calloc( 1,sizeof(double) );*s = *p1 + *( p2+1 );}main(){ double a[2] = { 1.1, 2.2 }, b[2] = { 10.0, 20.0 }, *s=a;fun( a, b, s );printf( "%5.2f\n", *s);}程序的输出结果是A) 21.10B) 11.10C) 12.10D) 1.10参考答案:D39.A) p=p->next; s ->next=p; p->next=s;B) s ->next='\0'; p=p->next; p->next=s;C) p=p->next; s ->next=p->next; p->next=s;D) p=(*p).next; (*s ).next=(*p).next; (*p).next=s;参考答案:A40. 若fp已定义为指向某文件的指针,且没有读到该文件的末尾,则C语言函数feof(fp)的函数返回值是A) EOFB) 非0C) -1D) 0参考答案:D。
2020年全国计算机二级考试试题题库(附答案)2020年全国计算机二级考试试题题库(附答案)一、选择题((1)-(40)每小题1分,(41)-(50)每小题2分,共60分)下列各题 A) 、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项在答题卡相应位置上涂黑,答在试卷上不得分。
(1) 应用软件是指A) 所有能够使用的软件 B) 能被各应用单位共同使用的某种软件C) 所有微机上都应使用的基本软件 D) 专门为某一应用目的而编制的软件(2) 下列述叙中错误的是A) 计算机要经常使用不要长期闲置不用B) 为了延长计算机的寿命,应避免频繁开关计算机C) 在计算机附近应避免磁场干扰D) 计算机用几小时后,应关机一会儿再用(3) 下列字符中,ASCII码值最小的是A) A B) a C) Z D) x(4) 用晶体管作为电子器件制成的计算机属于A) 第一代 B) 第二代 C) 第三代 D) 第四代(5) 下列各不同进制的四个无符号数中,最小的数是A) (11011001)2 B) (37)8 C) (75)10 D) (2A)16(6) 二进制数1110111.11转换成十六进制数是A) 77.C B) 77.3 C) E7.C D) E7.3(7) 下列各无符号十进制数中,能用八位二进制表示的是A) 296 B) 333 C) 256 D) 199(8) 计算机的软件系统可分类为A) 程序与数据 B) 系统软件与应用软件D) 操作系统与语言处理程序 D) 程序、数据与文档(9) 486机中的CPU同时能处理的二进制位数为A) 8 B) 16 C) 32 D) 64(10) 在使用计算机的过程中,需要重新启动DOS,则要A) 按Ctrl+Break键 B) 按^C键 C) 按Ctrl+Alt+Del键 D) 按^H键(11) 现要从软盘启动DOS(软盘中已存有DOS系统),设有如下一些操作:①打开计算机电源;②将该软盘插入A驱动器;③关好A驱动器门。
全国计算机等级考试二级Python真题及解析(2)全国计算机等级考试二级Python真题及解析(2)一、选择题1.关于算法的描述,以下选项中错误的是:A.算法具有可行性、确定性、有穷性的基本特征B.算法的复杂度主要包括时间复杂度和空间复杂度C.算法的基本要素包括数据对象的运算和操作及算法的控制结构D.算法是指解题方案的准确而完整的描述正确答案:B2.关于数据结构的描述,以下选项中正确的是:A.数据的存储结构是指反映数据元素之间逻辑关系的数据结构B.数据的逻辑结构有顺序、链接、索引等存储方式C.数据结构可以直观地用图形表示D.数据结构指相互独立的数据元素的集合正确答案:A3.在深度为7的满二叉树中,结点个数总共是:A.64B.127C.63D.32正确答案:B4.对长度为n的线性表进行顺序查找,在最坏的情况下所需要的比较次数是:A.n×(n+1)B.n-1C.nD.n+1正确答案:C5.关于结构化程序设计方法原则的描述,以下选项中错误的是:A.逐步求精B.模块化C.自顶向下D.自底向上正确答案:D6.与信息隐蔽的概念直接相关的概念是:A.模块独立性B.模块类型划分C.模块耦合度D.软件结构定义正确答案:A7.关于软件工程的描述,以下选项中描述正确的是:A.软件工程包括3要素:结构化、模块化、面向对象B.软件工程工具是完成软件工程项目的技术手段C.软件工程方法支持软件的开发、管理、文档生成D.软件工程是应用于计算机软件的定义、开发和维护的一整套方案、工具、文档和实践标准和工序正确答案:D8.在软件工程详细设计阶段,以下选项中不是详细设计工具的是:A.程序流程图B.CSSC.PALD.判断表正确答案:B9.以下选项中表示关系表中的每一横行的是:A.属性B.列C.码D.元组正确答案:D10.将E-R图转换为关系模式时,可以表示实体与联系的是:A.关系B.键C.域D.属性正确答案:A11.以下选项中Python用于异常处理结构中用来捕获特定类型的异常的保留字是:A.exceptB.doC.passD.while正确答案:A12.以下选项中符合Python语言变量命名规则的是:A.*iB.3_1C.AI!D.Templist正确答案:D13.关于赋值语句,以下选项中描述错误的是:A.在Python中,赋值语句使用等号(=)进行赋值B.在Python中,可以同时给多个变量赋值C.在Python中,可以使用“+=”、“-=”等运算符进行赋值运算D.在Python中,赋值语句可以用于给变量重新赋值正确答案:A在Python语言中,有一种同时给多个变量赋值的语句,例如x = "alice"。
2020年全国计算机二级等级考试全真模拟试卷及答案(二)1.下列关于算法复杂度叙述正确的是A) 最坏情况下的时间复杂度一定高于平均情况的时间复杂度B) 时间复杂度与所用的计算工具无关C) 对同一个问题,采用不同的算法,则它们的时间复杂度是相同的D) 时间复杂度与采用的算法描述语言有关参考答案:B(2014.9)2.设有栈S和队列Q,初始状态均为空。
首先依次将A,B,C,D,E,F入栈,然后从栈中退出三个元素依次入队,再将X,Y,Z 入栈后,将栈中所有元素退出并依次入队,最后将队列中所有元素退出,则退队元素的顺序为A) DEFXYZABCB) DEFXYZABCC) FEDXYZCBAD) DEFZYXABC参考答案:B(2014.9)3.下列叙述中正确的是A) 有两个指针域的链表称为二叉链表B) 循环链表是循环队列的链式存储结构C) 带链的栈有栈顶指针和栈底指针,因此又称为双重链表D) 结点中具有多个指针域的链表称为多重链表参考答案:D(2014.9)4.某二叉树共有845个结点,其中叶子结点有45个,则度为1的结点数为A) 400B) 754C) 756D) 不确定参考答案:C(2014.9)5.软件需求分析阶段的主要任务是A) 确定软件开发方法B) 确定软件开发工具C) 确定软件开发计划D) 确定软件系统的功能参考答案:D(2014.9)6.下面对软件测试描述错误的是A) 严格执行测试计划,排除测试的随意性B) 随机地选取测试数据C) 随机地选取测试数据D) 软件测试是保证软件质量的重要手段参考答案:B(2014.9)7.结构化程序的三种基本控制结构是A) 顺序、选择和重复(循环)B) 过程、子程序和分程序C) 顺序、选择和调用D) 调用、返回和转移参考答案:A(2014.9)8.数据库中对概念模式内容进行说明的语言是A) 数据定义语言B) 数据操纵语言C) 数据控制语言D) 数据宿主型语言参考答案:A(2014.9)9. 某个工厂有若干个仓库,每个仓库存放有不同的零件,相同零件可能放在不同的仓库中。
则实体仓库和零件间的联系是A) 多对多B) 一对多C) 多对一D) 一对一参考答案:A (2014.9)10.A) 交B) 差C) 并D) 选择参考答案:A(2014.9)11.以下叙述正确的是A) 计算机只接收由0和1代码组成的二进制指令或数据B) 计算机只接收由0和1代码组成的十进制指令或数据C) 计算机可直接接收并运行C源程序D) 计算机可直接接收并运行任意高级语言编写的源程序参考答案:A(2014.9)12.若有C语言表达式 2+3*4+7/3,以下选项中叙述正确的执行顺序是A) 先执行3*4得12,再执行7/3得2.5,最后执行2+12+2.5得16.5B) 先执行3*4得12,再执行2+12得14,再执行7/3得2,最后执行14+2得16C) 先执行7/3得2,再执行3*4得12,再执行12+2得14,最后执行2+14得16D) 先执行2+3得5,再执行5*4得20,再执行20+7得27,最后执行27/3得9参考答案:B(2014.9)13.若有定义:char c; int d; 程序运行时输入:c=1,d=2<回车>,能把字符1输入给变量c、整数2输入给变量d的输入语句是A) scanf("c=%d d=%d", &c,&d);B) scanf("c=%c d=%d", &c,&d);C) scanf("c=%d,d=%d", &c,&d);D) scanf("c=%c,d=%d", &c,&d);参考答案:D(2014.9)14.以下选项中,与n=i++ 完全等价的表达式是A) n=i,i=i+1B) n+=i+1C) i=i+1,n=iD) n=++i参考答案:A(2014.9)15.设有定义:int n = 1234;double x = 3.1415;则语句printf("%3d,%1.3f\n", n, x);的输出结果是A) 1234,3.142B) 123,3.142C) 1234,3.141D) 123,3.141参考答案:A(2014.9)16.有以下程序#include <stdio.h>main( ){ int a,b;for (a=0; a<3; a++){ scanf("%d", &b);switch(b){ default: printf("%d,", ++b);case 1: printf("%d,", ++b);case 2: printf("%d,", ++b);}}}执行时输入:1 2 3<回车>,则输出结果是A) 2,2,3,4,4,4,B) 2,3,4,C) 2,3,3,4,5,6,D) 2,3,4,3,4,4,参考答案:C(2014.9)17.设变量m为float类型,变量n为int类型,则以下能实现将m中的数值保留小数点后两位,第三位进行四舍五入运算的表达式是A) m=(m*100+0.5)/100.0B) n=m*100+0.5, m=n/100.0C) n=m/100+0.5, m=n*100.0D) m=m*100+0.5/100.0参考答案:B(2014.9)18.有以下程序#include <stdio.h>main( ){ int a = 1, b = 1;for( ; a--; )b--;printf("%d,%d\n", a, b); }程序运行后的输出结果是A) -1,0B) 0,0C) -1,-1D) 1,1参考答案:A(2014.9)19.若有定义:char s[30] = {0};运行时输入:This is a string.<回车>则以下不能正确读入整个字符串:This is a string.到字符数组 s 中的语句组是A) i = 0;while ((c=getchar())!='\n') s[i++] = c;B) gets(s);C) for (i=0; (c=getchar()) != '\n'; i++) s[i] = c;D) scanf("%s", s);参考答案:D(2014.9)20.有如下程序#include <stdio.h>main( ){int a = 0, b = 1;if (a++ && b++)printf("TRUE");elseprintf("FALSE");printf("_OUT:a=%d,b=%d\n", a, b); }程序运行后的输出结果是printf("FALSE");printf("_OUT:a=%d,b=%d\n", a, b); }程序运行后的输出结果是A) FALSE_OUT:a=1,b=1B) FALSE_OUT:a=0,b=2C) TRUE_OUT:a=1,b=2D) TRUE_OUT:a=0,b=1参考答案:A(2014.9)21.有如下程序#include <stdio.h>main( ){int i, data;scanf("%d", &data);for (i=0; i<5; i++){if (i < data) continue;printf("%d-", i);}}程序运行时,从键盘输入:3<回车>后,程序输出结果为A) 3-4-B) 1-2-3-C) 0-1-2-D) 0-1-2-3-参考答案:A(2014.9)22.有以下程序#include <stdio.h>main( ){int a = 0, b = 1;if (++a == b++)printf("1");elseprintf("0");printf("a=%d,b=%d\n", a, b);}程序运行后的输出结果是A) 1a=0,b=1B) 0a=1,b=2C) 1a=1,b=2D) 0a=0,b=2参考答案:C(2014.9)23.有如下程序段for (i=0; i<10; i++) if (i <= 5) break;则循环结束后i的值为A) 1B) 0C) 5D) 10参考答案:B(2014.9)24.设有定义:int a=0,b=1;,以下表达式中,会产生"短路"现象,致使变量b的值不变的是A) a++ && b++B) a++ || ++bC) ++a && b++D) +a || ++b参考答案:A(2014.9)25.有如下程序段for(i=0;i<10;i++)if(i>5) break;则循环结束后i的值为A) 10B) 5C) 9D) 6参考答案:D(2014.9)26.有以下程序段int x ,i ;for(i=1;i<=100;i++){ scanf("%d",&x);if(x<0) continue;printf("%4d\n",x);}下面针对上述程序段的描述正确的是A) 最多可以输出100个非负整数B) 当x<0时结束整个循环C) 当x>=0时没有任何输出D) printf函数调用语句总是被跳过参考答案:A(2014.9)27.关于地址和指针,以下说法正确的是A) 通过强制类型转换可以将一种类型的指针变量赋值给另一种类型的指针变量B) 可以取一个常数的地址赋值给同类型的指针变量C) 可以取一个表达式的地址赋值给同类型的指针变量D) 可以取一个指针变量的地址赋值给基类型相同的指针变量参考答案:A(2014.9)28.有以下程序#include <stdio.h>#define N 4void fun(int a[][N]){int i;for(i=0; i<N; i++)a[0][i] += a[N-1][N-1-i];}main( ){ int x[N][N]={ {1, 2, 3, 4},{5, 6, 7, 8},{9,10,11,12},{13,14,15,16}}, i;fun(x);for (i=0;i<N; i++) printf("%d,", x[i][i]); printf("\n");}程序运行后的输出结果是A) 4,7,10,13,B) 1,6,11,16,C) 17,6,11,16,D) 5,13,21,29,参考答案:C(2014.9)29.关于C语言函数说明的位置,以下叙述正确的是A) 在函数说明之后对该函数进行调用,编译时不会出现错误信息B) 函数说明可以出现在源程序的任意位置,在程序的所有位置对该函数的调用,编译时都不会出现错误信息C) 函数说明只能出现在源程序的开头位置,否则编译时会出现错误信息D) 函数说明只是为了美观和编译时检查参数类型是否一致,可以写也可以不写参考答案:A(2014.9)30.以下叙述正确的是A) 不能在数组说明符的一对方括号中使用表达式B) char c1, *c2, **c3, c4[2]; 是C语言的合法语句C) 数组下标的最小值可以是负值D) 若有数组定义 int array[5]; 则语句printf("%d",array[1.23]);是合法的参考答案:B(2014.9)31.有以下程序#include <stdio.h>main( ){int a = 2, *ptr;ptr = &a;*ptr = 8;a = (*ptr) ++;printf("%d,%d\n", a, *ptr); }程序运行后的输出结果是A) 9,9B) 8,9C) 2,4D) 0,4参考答案:A(2014.9)32.有以下程序#include <stdio.h>main( ){int i, *ptr;int array[4] = {0,1};for (ptr=array, i=0; i<3; i++, ptr++) {if (*ptr == 0)putchar('#');elseputchar('M' + *ptr);}printf("\n");}程序运行后的输出结果是A) MO#B) #F#C) MMMD) #N#参考答案:D(2014.9)33.有以下程序段:int m[2][3],(*p)[3];p=m;则以下对m数组元素的引用正确的是A) (p+1)[0]B) *(*(p+2)+1)C) *(p[1]+1)D) p[1]+2参考答案:C(2014.9)34.有以下程序#include <stdio.h>char *a = "you";char *b = "Welcome you to Beijing!"; main( ){ char *p;p = b;while (*p != *a) p++;printf("%s\n", p);}程序运行后的输出结果是A) you to Beijing!B) to Beijing!C) Welcome you to Beijing!D) Beijing!参考答案:A(2014.9)35.有以下程序#include <stdio.h>void f(int x[], int n){ if (n > 1){ printf("%d,", x[n-1]); f(x, n-1);printf("%d,", x[n-1]); }elseprintf("%d,", x[0]);}main( ){ int z[3] = {1, 2, 3};f(z,3);printf("\n");}程序运行后的输出结果是A) 3,1,3,B) 3,2,1,2,3,C) 1,2,3,1,2,3,D) 1,2,3,2,1,(2014.9)36.有以下程序#include <stdio.h>int a = 2;int f(int k){ static int n;int m;m = n = 0;n++; a++; m++; k++; return n+m+a+k;}main( ){ int k;for (k=0; k<2; k++) printf("%d,", f(k)); printf("\n");}程序运行后的输出结果是A) 6,8,B) 6,9,C) 6,6,D) 6,7,参考答案:A(2014.9)37.有以下程序#include <stdio.h>int sum(int* array, int len)if (len == 1)return array[1];elsereturn array[1] + sum(array+1, len-1); }main( ){int array[5] = {0,9,1,2}, res;res = sum(array, 3);printf("%d\n", res);}程序运行后的输出结果是A) 27B) 11C) 8D) 12参考答案:D(2014.9)38.有以下程序#include <stdio.h>main(){ char s[10] = "verygood", *ps = s; ps = "too";s[4] = '\0';puts(ps);}程序的运行结果是A) tooB) verygoodC) veryD) good参考答案:A(2014.9)39.以下叙述中错误的是A) 函数中的形参属于局部变量B) 在函数内部定义的变量只能在本函数范围内使用C) 在函数外部定义的变量在所有函数中都有效D) 在不同的函数中可以使用相同名字的变量参考答案:C(2014.9)40.有以下程序#include <stdio.h>main( ){ FILE *fp;int i, a[6] = {1,2,3,4,5,6}, k;fp = fopen("data.dat", "w+"); fprintf(fp, "%d\n", a[0]);for (i=1; i<6; i++){ rewind(fp);fprintf(fp, "%d\n", a[i]); }rewind(fp);fscanf(fp, "%d", &k);fclose(fp);printf("%d\n", k);}程序运行后的输出结果是A) 6B) 21C) 123456D) 654321参考答案:A。