计算机二级上机试题

时间:2023-02-03 03:48:25 作者:薄刃 综合材料 收藏本文 下载本文

【导语】“薄刃”通过精心收集,向本站投稿了11篇计算机二级上机试题,以下是小编收集整理后的计算机二级上机试题,仅供参考,希望对大家有所帮助。

篇1:计算机二级考试C++上机考试试题

计算机二级考试C++上机考试试题

一、程序改错题

使用VC++6.0打开考生文件夹下的源程序文件1.cpp,该程序运行时有错误,请改正错误,使程序正常运行,并且要求最后一个catch必须抛出执行的任何异常。

程序异常,输出信息为

error

O

ERROR

注意:不要改动main函数,不能增加或删除行,也不能更改程序的结构,错误的语句在//******error******的下面。

试题程序:

#include

intmain

{

try

{

throw(“error”);

}

//********error********

catch(chars)

{

cout<

}

try

{

throw((int)0);

}

//********error********

catch()

{

cout<

}

try

{

throw(O);

throw(“error”);

}

//********error********

catch()

{

cout<<“ERROR”<

}

return0;

}

二、简单应用题使用VC++6.0打开考生文件夹下的源程序文件2.cpp。请补充完整程序fun(inti),使其完成以下功能:如果i=5,则输出如下5行#号。

#

##

###

####

#####

注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。

试题程序:

#include

voidfun(inti)

{

}

intmain()

{

fun(5);

return0;

}

三、综合应用题使用VC++6.0打开考生文件夹下的源程序文件3.cpp。程序通过继承关系,实现对姓名的控制。类TC1实现对名字访问的接口,TC2实现对名字的设置和输出。

程序输出为

TC2Name

May

其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。

(1)在类TCl中定义接口函数GetName为纯虚函数。请在注释1后添加适当的.语句。

(2)函数GetName2用于获得名字的缓存,但只获得允许读操作这个缓存,请在注释2后添加适当的语句。

(3)实现TC2的构造函数,请在注释3后添加适当的语句。

(4)完成TC2的构造函数,实现对名字的处理。请在注释4后添加适当的语句。

注意:增加或者修改代码的位置已经用符号表示出来,请不要修改其他的程序代码。

试题程序:

#include

classTC1

{

public:

//********1********

};

classTC2:publicTCl

{

public:

voidGetName()

{

cout<<“TC2Name”<

}

//********2********

{

returnm_str;

}

//********3********

{

inti:

for(i=0;str[i]!=0;i++)

m_str[i]=str[i];

//********4********

}

private:

charm_str[32];

};

voidmain()

{

TCl*P;

TC20bj1(“May”);

p=&objl;

p->GetName();

cout<

return;

}

一、程序改错题(1)应改为“catch(char*s)”。

(2)应改为“cateh(inti)”。

(3)应改为“catch(…)”。

【解析】本题中第1个标识前的异常抛出语句为“throw(“error”);”,其中的类型为字符串。所以对应的异常捕捉语句catch中应该符合这个类型,而程序中给出的语句“catch(chars)”是字符型的,所以第1处的语句修改为“catch(char*S)”。第2个标识前的异常抛出语句为“throw((int)0);”,其中的类型为int。对应的异常捕捉语句catch中应该符合这个类型,所以补充catch子句中的类型,否则如果找不到匹配的catch块,系统就会调用一个系统函数,使程序终止运行。即第2处的语句修改为“catch(inti)”。如果在catch子句中没有指定异常信息的类型,那么就用删节号“…”表示它可以捕捉任何类型的异常信息,即修改为“catch(…)”。

二、简单应用题for(intj=0;j(i;j++)//行循环

{

for(intk=0;k<=j;k++)//列循环

cout<<“#”;//输出“#”

cout<

}

【解析】本题首先利用for循环进行外层循环,输出对应的i行,然后利用for循环进行内层循环,输出对应i行的i列。

三、综合应用题(1)应添加“virtualvoidGetNamt!()=0;”。

(2)应添加“constchar*GetName2()”。

(3)应添加“TC2(char*str)”。

(4)应添加“m_str[i]=0;”。

【解析】本题第1处要求“在类TC1中定义接口函数GetName,为纯虚函数”。在C++中,在基类中用virtual声明成员函数为虚函数。纯虚函数是在声明虚函数时被“初始化”为0的函数,即“virtualvoidGetName()=0;”。第2处要求“函数GetName2实现获得名字的缓存,但只获得读允许操作这个缓存”。只能引用数据成员,而不能修改,所以使用常成员函数,其一般形式为“const函数类型函数名”,即“constchar*GetName2()”。第3处要求“实现TC2的构造函数”。TC2的构造函数与类TC2的名称应该相同,而且第3处的大括弧中是对字符数组str的操作,所以类TC2的构造函数中的参数为str,即这里补全为“TC2(char*str)”。第4处要求“完成TC2的构造函数,实现对名字的处理”,补全类TC2的构造函数,构造函数中的名字变量str对应于类TC中的成员变量m_str,所以这里补全变量赋值操作“m_str[i]=0;”。

篇2:计算机二级vb上机题库

(34)某人设计了下面的函数fun,功能是返回参数a中数值的位数

Function fun(a As Integer) As Integer

Dim n%

n = 1

While a \\ 10 >= 0

n = n + 1

a = a \\ 10

Wend

fun = n

End Function

在调用该函数时发现返回的结果不正确,函数需要修改,下面的修改方案中正确的是

A)把语句n = 1改为n = 0

B)把循环条件a \\ 10 >= 0改为a \\ 10 >0

C)把语句 a = a \\ 10改为a = a Mod 10

D)把语句fun = n改为 fun = a

(35)在窗体上有一个名称为Check1的复选框数组

(含4个复选框),还有一个名称为Text1的文本

框,初始内容为空。程序运行时,单击任何复选

框,则把所有选中的复选框后面的方字罗列在文

本框中(见图)。下面能实现此功能的事件过程是

A)Private Sub Check1_Click(Indes As Integer)

Text1.Text =“”

For k = 0 To 3

If Check1(k).value = 1 Then

Text1.Text = Text1.Text & Check1(k).Caption & “ ” '双引号中是空格

End If

Next k

End Sub

B)Private Sub Check1_Click(Index As Integer)

For k = 0 To 3

If Check1(k).value = 1 Then

Text1.Text = Text1.Text & Check1(k).Caption & “ ” '双引号中是空格

End If

Next k

End Sub

C)Private Sub Check1_Click(Index As Integer)

Text1.Text = “”

For k = 0 To 3

If Check1(k).value = 1 Then

Text1.Text = Text1.Text & Check1(Index).Caption & “ ” '双引号中是空格

End If

Next k

End Sub

D)Private Sub Check1_Click(Index As Integer)

Text1.Text = “”

For k = 0 To 3

If Check1(k).value = 1 Then

Text1.Text = Text1.Text & Check1(k).Caption & “ ” '双引号中是空格

Exit For

End If

Next k

End Sub

二、填空题(每空2分,共30分)

请将每空的正确答案写在答题卡[1]~[15]序号的横线上,答在试卷上不得分。

(1)软件需求规格说明书应具有完整性,无岐义性、正确性、可验证性、可修改性等特征,其中最重要的是【1】 。

(2)在两种基本测试方法中,【2】 测试的原则之一是保证所测模块中每一个独立路径至少执行一次。

(3)线性表的存储结构主要分为顺序存储结构和链式存储结构。队列是一种特殊的线性表,循环队列是队列的【3】 存储结构。

(4)对下列二叉树进行中序遍历的结果为【4】 。

(5)在E-R图中,矩形表示【5】 。

(6)窗体上有一个组合框,其中已输入了

若干个项目。程序运行时,单击其中一

项,即可把该项与最上面的一项交换。

例如:单击图1中的“重庆”,则与“北

京”交换,得到图2的结果。下面是可

实现此功能的程序,请填空。

Private Sub Combo1_Click()

Dim temp

temp = Combo1.Text

[6] = Combo1.List(0)

Combo1.List(0) = temp

End Sub

(7)设窗体上有一个名称为HScroIII的水平滚动条,要求当滚动块移动位置后,能够在窗体上输出移动的距离(即新位置与原位置的刻度值之差,向右移动为正数,向左移动为负数)。下面是可实现此功能的程序,请填写。

Dim [7] As Integer

Private Sub Form_Load()

pos=HScroIII.value

End Sub

Private Sub HScroIII_Change()

Print [8] -pos

pos=HScroIII.value

End Sub

(8)设窗体上有一个名称为CD1的通用对话框,一个名称为Text1的文本框和一个名称为Command1的命令按钮。程序执行时,单击Command1按钮,则显示打开文件对话框,操作者从中选择一个文本文件,并单击对话框上的“打开”按钮后,则可打开该文本文件,并读入一行文本,显示在Text1中。下面是实现此功能的事件过程,请填空。

Private Sub Command1_Click()

CD1.Filter =“文本文件1*.txt(Word 文档)*.doc”

CD1.Filterinder = 1

CD1.ShowOpen

If CD1.FileName“”Then

Open [9] For Input As #1

Line Input #1,ch$

Close #1

Text1.Text = [10]

End If

End Sub

(9)下面的程序执行时,可以从键盘输入一个正整数,然后把该数的每位数字按逆序输出。例如:输入7685,则输出5867,输入1000,则输出0001。请填空。

Private Sub Command1_Click()

Dim x As Integer

x=InputBox(“请输入一个正整数”)

While x>__[11]___

Print x Mod 10;

x=x\\10

Wend

Print__[12]__

End Sub

篇3:计算机二级VB上机考试解题技巧

常用算法

熟练地掌握算法原理、编程思想和代码实现,就能够做到举一反三,轻松备考,顺利过关。

1.累加与连乘

基本思想:设置初值,循环计算。

扩展:

(1)计算指定范围内某一个数的倍数之和。

(2)计算某范围内所有数的乘积。

(3)求某一个数列的和。

2.生成N个不同的随机数

基本思想:将生成的数送入一个数组,每生成一个数后与数组中已有的数比较,如相同则丢弃,重新生成可使用语句Exit For。

3.求素数、极值

求素数基本思想:素数的意义;实现方法:双重循环,外循环判断每一个数,内循环判断能否被某数整除。

求极值基本思想:设第一个数为极值数,然后进入循环与其比较,超过则替换。

4.排序

(1)选择法:每次先找出最小数所在的F标,排序结束后,交换最小数的位置。

(2)冒泡法:两两比较后交换。

(3)合并法:将两个有序的数组合并成一个仃序的数组。两个数组中的数两两比较,小者放入目标数组,直到.个数组为窄。

(4)插入法:每输入或生成一个数马上插入到数组中使其有序。

5.数列的插入、删除和重组

(1)插入:对原数组进行扩充,循环查找插入位置(逐个比较),找到后,从后向前依次移动每一个数字,直到该位置,然后将数据插入。

(2)删除:与插入类似,也是先查找位置,找到后,将该位置以后的每一个元素依次前移。

(3)重组:采用排序或移动元素的思想,具体情况具体分析,如奇偶数的分开等。

6.穷举与递推

(1)穷举:利用循环将所有可能逐个测试,直到条件成立为止,如百钱买百鸡问题、钱币折零问题等。

(2)递推(迭代):将一个复杂的计算过程转化为简单过程的重复,通常也是利用循环实现,这一次计算的结果作为下一次的变量继续进行计算,直到满足指定的条件,如猴子吃桃问题、计算近似数问题、数列计算问题等。

7.顺序查找

基本思想:利用循环逐个比较待查找值,找到后退出,一般要使用Exit语句。

8.递归

基本思想:需要解决的问题必须用递归的方式进行描述,才能转变为递归过程,原则上所有的迭代过程都可以使用递归

过程来实现。递归描述有两个关键要素:一是递归结束的条件;二是迭代公式(此次的结果能够作为下一次的变量)。

递归过程的分析:递推n次直到结束条件满足,回归n次得到运算结果。

典型递归:阶乘的计算1!=1,n!=n*(n-1)!

最大公约数gcd(m,n):m mod n=0,gcd=n;gcd(m,n)=gcd(n,m mod n)

二分法查找search:中点值=关键值,结束;改变low、high后,递归调用search(a0,low,high,key,index)。

9.分类统计

统计各种类型的数据,如字母出现的次数、奇偶数统计等。基本思路是掌握分类条件的表示,设置各种类型的计数器(可以用数组),利用循环来解决。

10.字符串处理、加密与解密

字符串处理:输入(inputbox函数或文本框)、求长度(1en函数,汉字问题)、循环处理。典型考点:分离指定字符、分类统计、字符串的重组、字符的插入与删除等。

加密与解密:理解加密算法(移位法、密钥表)。

整型数据的处理:各位数字的拆分;数的因子;最大公约数gcd(m,n)=a与最小公倍数m*n/a;素数与合数;互质数(两个数的最大约数为1,两个数有公因子)。

1.计算机二级vb上机题库

2.20计算机二级VB上机考试答题攻略

3.2016年计算机二级VB上机考试答题技巧

4.计算机二级《VB》的常用算法

5.计算机二级VB强化试题及答案

6.计算机二级vb练习题

7.计算机二级VB考试题精选及答案

8.计算机二级VB考试答题技巧

9.计算机二级考试VB程序设计复习试题

10.计算机二级VB考试题

篇4:计算机二级VB上机考试答题攻略

常用算法

熟练地掌握算法原理、编程思想和代码实现,就能够做到举一反三,轻松备考,顺利过关。

1.累加与连乘

基本思想:设置初值,循环计算。

扩展:

(1)计算指定范围内某一个数的倍数之和。

(2)计算某范围内所有数的乘积。

(3)求某一个数列的和。

2.生成N个不同的随机数

基本思想:将生成的数送入一个数组,每生成一个数后与数组中已有的数比较,如相同则丢弃,重新生成可使用语句Exit For。

3.求素数、极值

求素数基本思想:素数的意义;实现方法:双重循环,外循环判断每一个数,内循环判断能否被某数整除。

求极值基本思想:设第一个数为极值数,然后进入循环与其比较,超过则替换。

4.排序

(1)选择法:每次先找出最小数所在的F标,排序结束后,交换最小数的位置。

(2)冒泡法:两两比较后交换。

(3)合并法:将两个有序的数组合并成一个仃序的数组。两个数组中的数两两比较,小者放入目标数组,直到.个数组为窄。

(4)插入法:每输入或生成一个数马上插入到数组中使其有序。

5.数列的插入、删除和重组

(1)插入:对原数组进行扩充,循环查找插入位置(逐个比较),找到后,从后向前依次移动每一个数字,直到该位置,然后将数据插入。

(2)删除:与插入类似,也是先查找位置,找到后,将该位置以后的每一个元素依次前移。

(3)重组:采用排序或移动元素的思想,具体情况具体分析,如奇偶数的分开等。

6.穷举与递推

(1)穷举:利用循环将所有可能逐个测试,直到条件成立为止,如百钱买百鸡问题、钱币折零问题等。

(2)递推(迭代):将一个复杂的计算过程转化为简单过程的重复,通常也是利用循环实现,这一次计算的结果作为下一次的变量继续进行计算,直到满足指定的条件,如猴子吃桃问题、计算近似数问题、数列计算问题等。

7.顺序查找

基本思想:利用循环逐个比较待查找值,找到后退出,一般要使用Exit语句。

8.递归

基本思想:需要解决的问题必须用递归的方式进行描述,才能转变为递归过程,原则上所有的迭代过程都可以使用递归

过程来实现。递归描述有两个关键要素:一是递归结束的条件;二是迭代公式(此次的结果能够作为下一次的变量)。

递归过程的分析:递推n次直到结束条件满足,回归n次得到运算结果。

典型递归:阶乘的计算1!=1,n!=n*(n-1)!

最大公约数gcd(m,n):m mod n=0,gcd=n;gcd(m,n)=gcd(n,m mod n)

二分法查找search:中点值=关键值,结束;改变low、high后,递归调用search(a0,low,high,key,index)。

9.分类统计

统计各种类型的数据,如字母出现的次数、奇偶数统计等。基本思路是掌握分类条件的表示,设置各种类型的计数器(可以用数组),利用循环来解决。

10.字符串处理、加密与解密

字符串处理:输入(inputbox函数或文本框)、求长度(1en函数,汉字问题)、循环处理。典型考点:分离指定字符、分类统计、字符串的重组、字符的插入与删除等。

加密与解密:理解加密算法(移位法、密钥表)。

整型数据的处理:各位数字的拆分;数的因子;最大公约数gcd(m,n)=a与最小公倍数m*n/a;素数与合数;互质数(两个数的最大约数为1,两个数有公因子)。

篇5:计算机二级C语言试题

2017计算机二级C语言试题有哪些呢?下面一起来看看~

用win7系统用什么练习编写c语言?

答:windows上就用微软的Visual Studio挺好的。

主页君专攻c语言?

答:不是,基本是工作项目中需要什么就学什么,但业余时间练练算法时还是习惯用c来写。

主页君,我想做网页,能告诉我从哪几个角度入手吗?

答:纯网页的话,最基本的html+css布局,javascript做交互脚本,如果是整个网站,还要做后端,php/python/java都可以,数据库mysql。

主页君,不知你会看见我的留言吗?一直想问你身边女编程人员多吗?

答:大家的留言我都能看见。女编程人员,这个名字好怪,还是叫做软件开发工程师妹子吧,就我呆过的一些环境来看,比例很低,差不多1/5。

我要看数据结构与算法。

答:今后会考虑做这个方向,但确实要花时间,敬请期待。

你要是在优酷上做视频就好了。

答:感谢支持,我不是大牛,纯业余时间跟大家交流,确实拿不出来时间跟精力做视频,不好意思了。

最后还是把昨天的答案放上来,也算有始有终

CABBD

(12)以下选项中,能用作用户标识符的是

A)void

B)8_8

C)_0_

D)unsigned

答案:C,void和unsigned都是保留字,变量名不能以数字开头,故8_8也不行

(13)阅读以下程序

#include

main

{ int case; float printF;

printf(“请输入2个数:”);

scanf(“%d %f”,&case,&pjrintF);

printf(“%d %f\\n”,case,printF);

}

该程序编译时产生错误,其出错原因是

A)定义语句出错,case是关键字,不能用作用户自定义标识符

B)定义语句出错,printF不能用作用户自定义标识符

C)定义语句无错,scanf不能作为输入函数使用

D)定义语句无错,printf不能输出case的值

答案:A,原因答案里已经说了,这题没啥意思,实际工程中用不到,纯概念。

(14)表达式:(int)((double)9/2)-(9)%2的值是

A)0

B)3

C)4

D)5

答案:B,(double)9/2是4.5,(int)((double)9/2)是4,(9)%2是1,两者之差是3。

(15)若有定义语句:int x=10;,则表达式x-=x+x的值为

A)-20

B)-10

C)0

D)10

答案:B,原表达式等于 x= x - (x+x)= 10 - (10 + 10) = -10。

(16)有以下程序

#include

main()

{ int a=1,b=0;

printf(“%d,”,b=a+b);

printf(“%d\\n”,a=2*b);

}

程序运行后的输出结果是

A)0,0

B)1,0

C)3,2

D)1,2

答案:D,printf打印的是表达式计算后的值。

篇6:省二级计算机考试试题

省二级计算机考试试题

一、word文档编辑与排版

1.在 D 盘根目录下新建以自己班级+姓名命名的文件夹。

2.录入以下文档:

3.设置样式,第一行标题设置为标题 1,一号字体;其他设置为正文四号字体。

4.设置字体:第一行标题为华文新魏;正文为华文楷体,“营业厅地址”五个字为黑体。

5.设置字形:第一行标题加粗,第三行加粗。6.设置对齐方式:第一行标题居中,第二行右对齐。

7.设置段落缩进:段落首行缩进 2 字符,其他按样文缩进。

8.设置段落间距:第二段段前、段后各 1 行。正文行距为固定值 20 磅。

9.按样文设置项目符号与编号。

10.页面设置:设置纸张为 A4,设置页边距上下各 2cm,左右各

3cm。

11.设置页眉页脚:为该通知单添加页眉“缴费通知”,小五号字体,居中。

12.插入如样文所示的图片,并设置图片高 0.3cm,宽 16cm。

13.如样文所示,为文字设置绿色底纹。

14.文中 A、C 两项,请分别使用“邮件合并”从下题目“excel 操作” 中的 Sheet1 中的“姓名”与“编号”字段获取。

15.文中 B 项请根据插入的 A 项的性别分别选择显示“先生”或“女士”。

16.将该文档以“word 操作”保存到自己新建的文件夹中。

17.在文章末尾添加一 3 行 5 列表格,将表格设置为表格自动套用格式“列表 8”。

二、电子表格格式编辑与数据处理

1.新建工作薄“excel 操作”保存到你建立的.文件夹中,输入“Sheet1” 工作表内容如下表所示。其中,“班级”使用数据有效性设置选择输入列表。

2.为工作表中的各科成绩设置数据有效性检查,要求输入的成绩介于 40 到 100 之间,合理设置“输入信息”和“出错信息”。3.将表格总分列的对齐方式设置为中部右对齐,其余单元格的对齐方式设置为中部居中;将单元格中的字体颜色设置为深蓝色。

4.将各科平均分的字体设置为 TimesNewRoman、12 号、加粗。

5.将表格第一列底纹设置为浅橙色,第二列设置为青绿色,第五列设置为浅黄。

6.将表格的外表框设置为 1.5 磅粗的双实线,红色;内边框设置为 1 磅粗实线。

7.把工作表中低于 60 的分数用红色标出,超过 90 的分数用绿色标出。

8.使用 Sheet1 工作表中的数据,统计“总分”并计算“各科平均分”,结果分别放在相应单元格中。其中“各科平均分”保留一位小数。

9.给总分最高的单元格插入批注“总分最高”。

10.根据姓名和总分为数据源创建图表,其标题为“成绩图表”,类型为“三维簇状柱形图”。

11.复制 Sheet1 中除了“各科平均分”以外其他的信息到 Sheet2 中,以“总分”为主要关键字,“数学”为次要关键字,升序排序。

12.在 Sheet2 中,高级筛选出总分>300 分,并且姓“李”的学生,并将结果保存为 Sheet3。

13.复制 Sheet2 中的数据到 sheet4,以“班级”为分类字段,将各科成绩进行“平均值”分类汇总。

14.复制 Sheet2 的信息到 Sheet5 中,布局以“系别”为分页,以“班级”为行字段,以各科考试成绩为平均值项,从 Sheet5 工作表中 A1 单元格起建立数据透视表。

三、利用 PowerPoint制作一份“教学课件(大学语文)”

1.文稿长度不少于 6 张幻灯片。

2.设计一个较好的首页封面。

3.要求课件内容包括:课文背景、作者年代、练习题、课堂讨论等。

4.尽可能地利用文稿演示软件的各种优化演示文稿的设计,如插入声音与影片、幻灯片的切换方式、自定义动画、超级链接、动作按钮等的设计。

篇7:计算机二级c语言试题

单项选择题,40 题,40 分(含公共基础知识部分 10 分);

程序填空题,3 小空,18 分;

程序改错题,2 个错误,18 分;

程序设计题,24 分。

篇8:计算机二级c语言试题

1.(A )是构成C语言程序的基本单位。

A、函数

B、过程

C、子程序

D、子例程

2.C语言程序从 C 开始执行。

A、程序中第一条可执行语句

B、程序中第一个函数

C、程序中的main函数

D、包含文件中的第一个函数

3、以下说法中正确的是( C )。

A、C语言程序总是从第一个定义的函数开始执行

B、在C语言程序中,要调用的函数必须在main( )函数中定义

C、C语言程序总是从main( )函数开始执行

D、C语言程序中的main( )函数必须放在程序的开始部分

4.下列关于C语言的说法错误的是( B ) 。

A、C程序的工作过程是编辑、编译、连接、运行

B、C语言不区分大小写。

C、C程序的三种基本结构是顺序、选择、循环

D、C程序从main函数开始执行

5.下列正确的标识符是(C )。

A、-a1

B、a[i]

C、a2_i

D、int t

5~8题为相同类型题

考点:标识符的命名规则

只能由字母、数字、下划线构成

数字不能作为标识符的开头

关键字不能作为标识符

选项A中的“-” ,选项B中“[”与“]”不满足(1);选项D中的int为关键字,不满足(3)

6.下列C语言用户标识符中合法的是(B )。

A、3ax

B、x

C、case

D、-e2 E)union

选项A中的标识符以数字开头不满足(2);选项C,E均为为关键字,不满足(3);选项D中的“-”不满足(1);

7.下列四组选项中,正确的C语言标识符是( C )。

A、%x

B、a+b

C、a123

D、123

选项A中的“%” ,选项B中“+”不满足(1);选项D中的标识符以数字开头不满足(2)

8、下列四组字符串中都可以用作C语言程序中的标识符的是( A)。

A、print _3d db8 aBc

B、I\\am one_half start$it 3pai

C、str_1 Cpp pow while

D、Pxq My->book line# His.age

选项B中的“\”,”$” ,选项D中“>”,”#”,”.”,”-”不满足(1);选项C中的while为关键字,不满足(3)

9.C语言中的简单数据类型包括(D )。

A、整型、实型、逻辑型

B、整型、实型、逻辑型、字符型

C、整型、字符型、逻辑型

D、整型、实型、字符型

10.在C语言程序中,表达式5%2的结果是 C 。

A、2.5

B、2

C、1

D、3

%为求余运算符,该运算符只能对整型数据进行运算。且符号与被模数相同。5%2=1; 5%(-2)=1;(-5)%2=-1;(-5)%(-2)=-1;

/为求商运算符,该运算符能够对整型、字符、浮点等类型的数据进行运算,5/2=2

11.如果int a=3,b=4;则条件表达式“aA、3

B、4

C、0

D、1

详见教材P97.

表达式1?表达式2:表达式3

先计算表达式1,

若表达式1成立, 则选择计算表达式2,并表达式2的值作为整个大表达式的值;

若表达式1不成立,则选择计算表达式3,并将表达式3的值作为整个大表达式的值

此题中的aa为3,b为4。a12.若int x=2,y=3,z=4 则表达式x

A、4

B、3

C、2

D、0

E)1

13.C语言中,关系表达式和逻辑表达式的值是( B ) 。

A、0

B、0或1

C、1

D、‘T’或’F’

14. 下面( D )表达式的值为4.

A、11/3

B、11.0/3

C、(float)11/3

D、(int)(11.0/3+0.5)

14~16题为同一类型

详见教材P54~56.

(1)相同数据类型的元素进行数学运算(+、-、*、/)得到结果还保持原数据类型。

(2)不同数据类型的元素进行数学运算,先要统一数据类型,统一的标准是低精度类型转换为高精度的数据类型。

选项A,11与3为两个整数,11/3结果的数据类型也应为整数,因此将3.666666的小数部分全部舍掉,仅保留整数,因此11/3=3.

选项B,11.0为实数,3为整数,因此首先要统一数据类型,将整型数据3转换为3.0,转换后数据类型统一为实型数据,选项B变为11.0/3.0,结果的数据类型也应为实型数据,因此选项B 11.0/3=3.666666

选项C,先将整数11强制类型转换,转换为实型11.0,因此选项C变为11.0/3,其后计算过程、结果与选项B同

选项D,首先计算11.0/3,其计算过程、结果与选项B同,得到3.666666;再计算3.666666+0.5=4.166666,最后将4.166666强制类型转换为整型,即将其小数部分全部舍掉,结果为4

15.设整型变量 a=2,则执行下列语句后,浮点型变量b的值不为0.5的是( B )

A、b=1.0/a

B、b=(float)(1/A、

C、b=1/(float)a

D、b=1/(a*1.0)

16. 若“int n; float f=13.8;”,则执行“n=(int)f%3”后,n的值是(A)

A、1

B、4

C、4.333333

D、4.6

“(int)f“表示将f中的值强制类型转换为整型,即将13.8的小数部分舍掉,转换为13;然后计算13%3,结果为1,再将结果赋给变量n,因此n的值为1

17. 以下对一维数组a的正确说明是: D

A、char a(10);

B、int a[];

C、int k=5,a[k];

D、char a[3]={‘a’,’b’,’c’};

详见教材P143~144,一维数组的定义、初始化

类型符 数组名 [常量表达式]

类型符是指数组中数组元素的类型;数组名要符合标识符命名规则;常量表达式是指数组的长度(数组中包含元素的个数),其值只能是整数,不可以是变量,而且从1开始计数。

选项A,常量表达式只能放在中括号 [ ]中

选项B,只有在对数组初始化(即赋值)的时候才可以省略数组的长度,B中并未对a进行初始化。

选项C,常量表达式不能为变量。

18.以下能对一维数组a进行初始化的语句是:( C )

A、int a[5]=(0,1,2,3,4,)

B、inta(5)={}

C、int a[3]={0,1,2}

D、int a{5}={10*1}

详见教材P145,一维数组的定义、初始化

选项B,D,常量表达式只能放在中括号 [ ]中

选项A,数组可以看做是若干个相同数据类型元素的有序集合,因此以集合的形式对其初始化,使用{ }对其初始化,选项A用了.

19.在C语言中对一维整型数组的正确定义为 D 。

A、int a(10);

B、int n=10,a[n];

C、int n;a[n];

D、#define N 10

int a[N];

20、已知:int a[10]; 则对a数组元素的正确引用是( D )。

A、a[10]

B、a[3.5]

C、a(5)

D、a[0]

详见教材P144,数组元素的引用

数组名[下标]

引用数组元素时,[ ]中的下标为逻辑地址下标,只能为整数,可以为变量,且从0开始计数

int a[10]表示定义了一个包含10个整型数据的数组a,数组元素的逻辑地址下标范围为0~9,即a[0] 表示组中第1个元素; a[1] 表示组中第2个元素; a[2] 表示组中第3个元素; ......;a[9] 表示组中第10个元素.

选项A,超过了数组a的逻辑地址下标范围;

选项B,逻辑地址下标只能为整数

选项C,逻辑地址下标只能放在[ ]中

21.若有以下数组说明,则i=10;a[a[i]]元素数值是(C )。

int a[12]={1,4,7,10,2,5,8,11,3,6,9,12};

A、10

B、9

C、6

D、5

先算a[a[i]]内层的a[i],由于i=10,因此a[i]即a[10].

a[10]对应下面数组中的元素为9. 因此a[a[i]]即为a[9]

a[9]对应下面数组中的元素为6. 因此a[9]即为6

22.若有说明:int a[][3]={{1,2,3},{4,5},{6,7}}; 则数组a的第一维的大小为: ( B )

A、2

B、3

C、4

D、无确定值

5 7

D、3 6 9

二维数组的一维大小,即指二维数组的行数,在本题中,按行对二维数组赋值,因此内层有几个大括号,数组就有几行

23.对二维数组的正确定义是(C )

详见教材P149~152,二维数组的定义、初始化

类型符 数组名 [常量表达式][常量表达式]

二维数组可以看做是矩阵

类型符是指数组中数组元素的类型;数组名要符合标识符命名规则;第一个常量表达式是指数组的行数;第二个常量表达式是指数组的列数;常量表达式的值只能是整数,不可以是变量,而且从1开始计数。

一维数组初始化时可以省略数组长度

二维数组初始化时可以省略行数,但不能省略列数

选项A,B,都省略了列数

选项D,不符合二维数组定义的一般形式,行、列常量表达式应该放在不同的[]中

A、int a[ ][ ]={1,2,3,4,5,6};

B、int a[2] []={1,2,3,4,5,6};

C、int a[ ] [3]={1,2,3,4,5,6};

D、int a[2,3]={1,2,3,4,5,6};

24.已知int a[3][4];则对数组元素引用正确的是__C___

A、a[2][4]

B、a[1,3]

C、a[2][0]

D、a(2)(1)

详见教材P150,数组元素的引用

数组名[下标] [下标]

引用数组元素时,[ ]中的下标为逻辑地址下标,只能为整数,可以为变量,且从0开始计数

第一个[下标]表示行逻辑地址下标,第二个[下标]表示列逻辑地址下标。

本题图示详见P149图6.7

因此a的行逻辑地址范围0~2;a的列逻辑地址范围0~3;

选项A,列逻辑地址下标超过范围

选项B,D,的引用形式不正确。

25.C语言中函数返回值的类型是由 A 决定的.

A、函数定义时指定的类型

B、return语句中的表达式类型

C、调用该函数时的实参的数据类型

D、形参的数据类型

26. 在C语言中,函数的数据类型是指(A )

A、函数返回值的数据类型

B、函数形参的数据类型

C、调用该函数时的实参的数据类型

D、任意指定的数据类型

27.在函数调用时,以下说法正确的是( B )

A、函数调用后必须带回返回值

B、实际参数和形式参数可以同名

C、函数间的数据传递不可以使用全局变量

D、主调函数和被调函数总是在同一个文件里

28. 在C语言中,表示静态存储类别的关键字是: ( C )

A、auto

B、register

C、static

D、extern

29.未指定存储类别的变量,其隐含的存储类别为(A )。

A、auto

B、static

C、extern

D、register

30. 若有以下说明语句:

struct student

{ int num;

char name[ ];

float score;

}stu;

则下面的叙述不正确的是: (D )

A、struct是结构体类型的关键字

B、struct student 是用户定义的结构体类型

C、num, score都是结构体成员名

D、stu是用户定义的结构体类型名

31.若有以下说明语句:

struct date

{ int year;

int month;

int day;

}brithday;

则下面的叙述不正确的是__C___.

A、struct是声明结构体类型时用的关键字

B、struct date 是用户定义的结构体类型名

C、brithday是用户定义的结构体类型名

D、year,day 都是结构体成员名

32. 以下对结构变量stul中成员age的非法引用是 B

struct student

{ int age;

int num;

}stu1,*p;

p=&stu1;

A、stu1.age

B、student.age

C、p->age

D、(*p).age

33.设有如下定义:

struck sk

{ int a;

float b;

}data;

int *p;

若要使P指向data中的a域,正确的赋值语句是 C

A、p=&a;

B、p=datA、a;

C、p=&datA、a;

D、*p=datA、a;

34.设有以下说明语句:

typedef struct stu

{ int a;

float b;

} stutype;

则下面叙述中错误的是( D )。

A、struct是结构类型的关键字

B、struct stu是用户定义的结构类型

C、a和b都是结构成员名

D、stutype是用户定义的结构体变量名

35.语句int *p;说明了 C 。

A、p是指向一维数组的指针

B、p是指向函数的指针,该函数返回一int型数据

C、p是指向int型数据的指针 // 指针的定义教材P223

D、p是函数名,该函数返回一指向int型数据的指针

36.下列不正确的定义是( A )。

A、int *p=&i,i;

B、int *p,i;

C.int i,*p=&i;

D、int i,*p;

选项A先定义一个整型指针变量p,然后将变量i的地址赋给p。然而此时还未定义变量i因此编译器无法获得变量i的地址。(A与C对比,选项C先定义变量i,则在内存中为i分配空间,因此i在内存空间的地址就可以确定了;然后再定义p,此时可以为p赋i的地址,C正确)

37. 若有说明:int n=2,*p=&n,*q=p,则以下非法的赋值语句是: ( D )

A、p=q

B、*p=*q

C、n=*q

D、p=n

p,q同为整型指针变量,二者里面仅能存放整型变量的地址。

选项A,q中为地址,因此可将此地址赋给p

选项B,*p表示p所指向对象n的内容,即一个整数;*q表示q所指向对象的内容,由于在定义q时为其初始化,将p中n的地址给q,因此p中存放n的地址,*q表示q所指向对象n的内容.因此*p=*q 相当于 n=n;

选项C,n=*q 等价于n=n;

选项D,p中只能存放地址,不能将n中的整数值赋给p

38.有语句:int a[10],;则 B 是对指针变量p的正确定义和初始化。

A、int p=*a;

B、int *p=a;

C、int p=&a;

D、int *p=&a;

选项A,a是数组名,不是指针变量名,因此不可用*标注数组名a

选项C,a是数组名,数组名就是地址,无需再用地址符号。而且在定义指针变量p时,应在变量名前加*,标明p是指针变量

选项D,a是数组名,数组名就是地址,无需再用地址符号。

39.若有说明语句“int a[5],*p=a;”,则对数组元素的正确引用是( C )。

A、a[p]

B、p[a]

C、*(p+2)

D、p+2

首先定义一个整型数组a,a的长度为5,然后定义一个指针变量p,并同时对p进行初始化,将数组a的地址赋给p。因此此时p中存放的数组a的首地址,即数组中第一个元素a[0]的地址。

对于数组元素下标的引用(详见p144), 一般形式 数组名[下标] 其中下标为逻辑地址下标,从0开始计数,方括号中的下标可以是变量,可以是表达式,但结果一定要是整数。

选项A,p中存放的是地址,不是整数,不能做数组元素的下标

选项B,a是数组名,数组名就是地址,不是整数,不能做数组元素的下标

选项C,(重点!!!详见p231~234) p+2表示指向同一数组中的下两个元素的地址,当前p指向a[0],则p+2表示a[2]的地址,因此*(p+2)表示a[2]的内容

40. 有如下程序

int a[10]={1,2,3,4,5,6,7,8,9,10},*P=a;

则数值为9的表达式是 B

A、*P+9

B、*(P+8)

C、*P+=9

D、P+8

(重点!!!详见p231~234)

首先定义一个整型数组a,a的长度为5,然后定义一个指针变量P,并同时对P进行初始化,将数组a的地址赋给P。因此此时P中存放的数组a的首地址,即数组中第一个元素a[0]的地址。

数组中9对应的是a[8], 选项B,P+8表示数组中后8个元素的地址,即a[8]的地址。*(P+8)则表示该地址内所存放的内容,即a[8]的值。

选项A,*P表示P所指向对象的内容,此时P指向a[0], *P即a[0]的值1. *P+9=1+9=10

选项C,*P表示P所指向对象的内容,此时P指向a[0], *P即a[0]的值。因此*P+=9 即*P =*P+9, 等价于a[0]=a[0]+9.

选项D,P+8表示数组中后8个元素的地址,即a[8]的地址,而非a[8]中的值。

篇9:计算机二级c语言试题

计算机二级c语言试题

多花点时间看看书,然后做做题,计算机二级完全没有问题。下面是计算机二级c语言试题,欢迎练习。

1、以下叙述中正确的是

A.只要适当地修改代码,就可以将do-while与while相互转换

B.对于“for(表达式1;表达式2;表达式3)循环体”首先要计算表达式2的值,以便决定是否开始循环

C.对于“for(表达式1;表达式2;表达式3)循环体”,只在个别情况下才能转换成while语句

D.如果根据算法需要使用无限循环(即通常所称的“死循环”),则只能使用while语句

参考答案:A

参考解析:B选项中,for语句中需要先求解先求解表达式1;C选项中,for语句使用最为灵活,它完全可以取代while语句;D选项中,对于死循环,也可以使用for语句。因此A选项正确。

2、以下叙述中正确的是

A.两个字符串可以用关系运算符进行大小比较

B.函数调用strlen(s);会返回字符串S实际占用内存的大小(以字节为单位)

C.C语言本身没有提供对字符串进行整体操作的运算符

D.当拼接两个字符串时,结果字符串占用的内存空间是两个原串占用空间的和

参考答案:C

参考解析:本题考查字符串处理函数strien、strcat、strcmp。B选项中strlen返回的是字符串s实际占用内存大小加上结尾符,A选项中不能用关系运算符进行大小比较,可以使用strcmp。D选项当使用连接函数strcat时,内存空间会减少一个字符位置。

3. 下列不正确的定义是( )。

A、int *p=&i,i;

B、int *p,i;

C.int i,*p=&i;

D、int i,*p;

参考答案:A

参考解析:选项A先定义一个整型指针变量p,然后将变量i的地址赋给p。然而此时还未定义变量i因此编译器无法获得变量i的地址。(A与C对比,选项C先定义变量i,则在内存中为i分配空间,因此i在内存空间的地址就可以确定了;然后再定义p,此时可以为p赋i的地址,C正确)

4.下列数据中属于“字符串常量”的是( )。

A、“a”

B、{ABC}

C、‘abc\\0’

D、‘a’

参考答案:A

参考解析:若干个字符构成字符串

在C语言中,用单引号标识字符;用双引号标识字符串。选项B,C,分别用{}和’’标识字符串。选项D,标识字符。

5.已知char x[]=”hello“, y[]={'h','e','a','b','e'};, 则关于两个数组长度的正确描述是 .

A、相同

B、x大于y

C、x小于y

D、以上答案都不对

参考答案:B

参考解析:can'kaoC语言中,字符串后面需要一个结束标志位'\\0',通常系统会自动添加。

对一维数组初始化时可采用字符串的形式(例如本题数组x),也可采用字符集合的形式(例如本题数组y)。在以字符串形式初始化时,数组x不尽要存储字符串中的字符,还要存储字符串后的结束标志位,因此数组x的长度为6;在以字符集合形式初始化时,数组y,仅存储集合中的元素,因此数组y长度为5

6、若有定义语句:char a='82';则变量a( )

A.说明不合法

B.包含1个字符

C.包含2个字符

D.包含3个字符

参考答案:B

参考解析:char a='82',定义字符量a,char型变量值为1个字节长度,并从右侧开始运算,所以a的值应为'2'。因此B选项正确。

7、以下叙述中正确的`是

A.对于逻辑表达式:a++|| b++,设a的值为1,则求解表达式的值后,b的值会发生改变

B.对于逻辑表达式:a++&&b++,设a的值为0,则求解表达式的值后。b的值会发生改变

C.else不是一条独立的语句,它只是if语句的一部分

D.关系运算符的结果有三种:0,1,-1

参考答案:C

参考解析:B选项和A选项中,&&、||都是先计算左边表达式的值,当左边表达式的值能确定整个表达式的值。而且&&、||的优先级比++高,所以题中只需判断a的值即可知道符合表达式的真假;D选项中,关系运算符的结果有“真”和“假”两种。因此c选项正确。

8、以下选项中合法的c语言常量是( )。

A.,C—STR’

B.2014.1

C.”l.0

D.2EK

参考答案:B

参考解析:所谓常量是指在程序运行的过程中,其值不能被改变的量。在C语言中,有整型常量、实型常量、字符常量和字符串常量等类型。选项A是字符串,但使用单引号,错误,选项c,D,为实型常量中指数形式,但指数形式e(E)之前必须是数字,之后必须为整数,错误。故答案为B选项。

9. 若“int n; float f=13.8;”,则执行“n=(int)f%3”后,n的值是( )

A、1

B、4

C、4.333333

D、4.6

参考答案:A

参考解析:“(int)f“表示将f中的值强制类型转换为整型,即将13.8的小数部分舍掉,转换为13;然后计算13%3,结果为1,再将结果赋给变量n,因此n的值为1

10.以下能对一维数组a进行初始化的语句是:( )

A、int a[5]=(0,1,2,3,4,)

B、inta(5)={}

C、int a[3]={0,1,2}

D、int a{5}={10*1}

参考答案:C

参考解析:详见教材P145,一维数组的定义、初始化

选项B,D,常量表达式只能放在中括号 [ ]中

选项A,数组可以看做是若干个相同数据类型元素的有序集合,因此以集合的形式对其初始化,使用{ }对其初始化,选项A用了().

篇10:计算机上机实验报告

一、《软件技术基础》上机实验内容

1.顺序表的建立、插入、删除。

2.带头结点的单链表的建立(用尾插法)、插入、删除。

二、提交到个人10m硬盘空间的内容及截止时间

1.分别建立二个文件夹,取名为顺序表和单链表。

2.在这二个文件夹中,分别存放上述二个实验的相关文件。每个文件夹中应有三个文件(.c文件、.obj文件和.exe文件)。

3.截止时间:12月28日(18周周日)晚上关机时为止,届时服务器将关闭。

三、实验报告要求及上交时间(用a4纸打印)

1.格式:

篇11:计算机上机实验报告

用户名se××××学号姓名学院

①实验名称:

②实验目的:

③算法描述(可用文字描述,也可用流程图):

④源代码:(.c的文件)

⑤用户屏幕(即程序运行时出现在机器上的画面):

2.对c文件的要求:

程序应具有以下特点:a可读性:有注释。

b交互性:有输入提示。

c结构化程序设计风格:分层缩进、隔行书写。

3.上交时间:12月26日下午1点-6点,工程设计中心三楼教学组。请注意:过时不候哟!

四、实验报告内容

0.顺序表的插入。

1.顺序表的删除。

2.带头结点的单链表的'插入。

3.带头结点的单链表的删除。

注意:1.每个人只需在实验报告中完成上述4个项目中的一个,具体安排为:将自己的序号对4求余,得到的数即为应完成的项目的序号。

例如:序号为85的同学,85%4=1,即在实验报告中应完成顺序表的删除。

2.实验报告中的源代码应是通过编译链接即可运行的。

3.提交到个人空间中的内容应是上机实验中的全部内容。

计算机二级考试试题

计算机二级vb试题

计算机基础二级考试试题及答案

计算机三级信息安全技术上机模拟试题

计算机二级简历

计算机二级答案

计算机二级考试答案

二级公路工程笔试题

全国计算机等级考试三级C语言全真上机试题解析

计算机考试试题

计算机二级上机试题(合集11篇)

欢迎下载DOC格式的计算机二级上机试题,但愿能给您带来参考作用!
推荐度: 推荐 推荐 推荐 推荐 推荐
点击下载文档 文档为doc格式
点击下载本文文档