全国计算机等级考试二级C语言真题库之选择题Word文档格式.docx
- 文档编号:7762966
- 上传时间:2023-05-09
- 格式:DOCX
- 页数:23
- 大小:27.79KB
全国计算机等级考试二级C语言真题库之选择题Word文档格式.docx
《全国计算机等级考试二级C语言真题库之选择题Word文档格式.docx》由会员分享,可在线阅读,更多相关《全国计算机等级考试二级C语言真题库之选择题Word文档格式.docx(23页珍藏版)》请在冰点文库上搜索。
C)联系的复杂程度
D)数据之间的联系方式
【解析】层次模型的基本结构是树形结构,网状模型是一个不加任何条件限制的无向图,关系模型采用二维表来表示,所以三种数据库的划分原则是数据之间的联系方式。
8.一个工作人员可以使用多台计算机,而一台计算机可被多个人使用,则实体工作人员与实体计算机之间的联系是( )。
A)一对一
B)一对多
C)多对多
D)多对一
C
【解析】因为一个人可以操作多个计算机,而一台计算机又可以被多个人使用,所以两个实体之间是多对多的关系。
9.数据库设计中反映用户对数据要求的模式是( )。
A)内模式
B)概念模式
C)外模式
D)设计模式
【解析】数据库系统的三级模式是概念模式、外模式和内模式。
概念模式是数据库系统中全局数据逻辑结构的描述,是全体用户公共数据视图。
外模式也称子模式或用户模式,它是用户的数据视图,给出了每个用户的局部数据描述,所以选择C)。
内模式又称物理模式,它给出了数据库物理存储结构与物理存取方法。
10.有三个关系R、S和T如下:
则由关系R和S得到关系T的操作是( )。
A)自然连接
B)差
C)交
D)并
【解析】关系T中的元组是R关系中有而S关系中没有的元组的集合,所以进行的是差的运算。
11.计算机能直接执行的程序是
A)源程序
B)目标程序
C)汇编程序
D)可执行程序
【解析】计算机能直接执行的程序是二进制的可执行程序,扩展名为。所以选择D选项。
12.以下叙述中正确的是
A)C语言规定必须用作为主函数名,程序将从此开始执行
B)可以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行
C)C语言程序将从源程序中第一个函数开始执行
D)的各种大小写拼写形式都可以作为主函数名,如:
,等
【解析】C语言中的主函数唯一为()函数不能任意指定,所以B选项错误。C语言从主函数()开始,到主函数()结束,所以C选项错误。主函数必须写成小写的,不能混淆大小写,所以D选项错误。
13.以下选项中可用作C程序合法实数的是
A)3.0e0.2
B).1e0
C)E9
D)9.12E
【解析】A选项中E后面的指数必须为整数。C语言规定之前必须要有数字,所以C选项错误。E后面必须要有数字,且必须为整数,所以D选项错误。
14.下列定义变量的语句中错误的是
A);
B);
C);
D)$;
【解析】C语言规定,变量命名必须符合标识符的命名规则。D选项中包含了非法字符"
$"
所以错误。标识符由字母、数字或下划线组成,且第一个字符必须是大小写英文字母或者下划线,而不能是数字。大写字符与小写字符被认为是两个不同的字符,所以不是关键字。
15.表达式:
()(()9/2)-9%2的值是
A)0
B)3
C)4
D)5
【解析】先将整型数据9强制转换成型,然后除以2得到的结果与型保持一致,即为4.5,然后将4.5强制转换成整型数据4,然后计算9%2的值为1,最后计算4-1的值为3,所以选择B选项。
16.设变量均已正确定义,若要通过
("
"
1122);
语句为变量a1和a2赋数值10和20,为变量c1和c2赋字符X和Y。
以下所示的输入形式中正确的是(注:
□代表空格字符)
A)10□X<
回车>
20□Y<
B)10□X20□Y<
C)10X<
20Y<
D)10□X□20□Y<
【解析】输入数据的格式必须与()的格式控制串完全匹配,如果A、B、C选项中在数字10后面均输入了空格,则会将空格赋给变量c1,而不是把X赋给c1,所以选择C选项。
17.以下选项中不能作为C语言合法常量的是
A)0.16
B)'
'
C)"
\a"
D)'
\011'
【解析】要想表示字符串常量应该用双引号表示,即"
单引号用于表示字符常量,所以B选项中的表示方法错误。
18语句的基本形式是:
(表达式)语句,以下关于"
表达式"
值的叙述中正确的是
A)必须是逻辑值
B)必须是整数值
C)必须是正数
D)可以是任意合法的数值
【解析】语句中的表达式可以是任意合法的数值,如常量,变量表达式。所以D选项正确。
19.有如下嵌套的语句
(a<
b)
c);
;
(b<
以下选项中与上述语句等价的语句是
A)(a<
b)?
((b<
c)):
((b>
c));
B)(a<
((a<
C)(a<
b)(b<
c);
D)(a<
b)(a<
【解析】题目中嵌套语句的含义是当a<
b且a<
c成立,则将a的值赋给k,如果a<
b成立而a<
c不成立将c的值赋给k。如果a<
b不成立而b<
c成立,将b的值赋给k,如果如果a<
b不成立且b<
c也不成立,将c的值赋给k。判断条件表达式只有B选项可以表示这个含义。
20.有以下程序
<
>
()
{5;
()("
3);
\n"
);
}
执行后的输出结果是
A)1
B)2
D)死循环
【解析】先自减在使用,所以第一次判断条件即为(4),条件为真执行打印k的值4-3,结果为1,第二次判断条件即为(0),条件为假,结束循环,打印回车换行符。所以选择A选项。
21.有以下程序
()
{;
(3;
i>
=1;
)
{(1;
j<
=2;
)("
"
程序的运行结果是
A)
43
25
B)
45
34
23
C)
D)
【解析】第一次执行外循环的值为3,第一次执行内循环j的值为1<
=2条件成立,打印的值,即4;
第二次执行内循环j的值为2<
=2条件成立,打印的值,即5;
再判断条件不成立,打印回车换行符,跳出内循环。第二次执行外循环的值为2,内循环的执行同第一次一样,所以打印3和4,打印回车换行,结束内循环。第三次执行外循环i的值为1,同理内循环中打印2和3,打印回车换行符,结束内循环。
22.有以下程序
{50;
{(k)
{1:
3:
1;
:
0;
2:
4:
2;
}(k>
0n<
5);
程序运行后的输出结果是
A)02356
B)0235
C)235
D)2356
【解析】k的值为5,逐个对语句进行匹配,均不匹配,执行下的语句0-;
在执行2:
后面的空语句,与4:
后面的2;
执行语句跳出判断,打印n的值,即2。经过第一次循环后的值为3,然后进行k>
5条件判断为真,第二次执行循环体,执行3:
后面的1-;
再执行语句跳出循环,此时打印n的值3,此时k的值为2。第三次执行循环体k的值为2,满足条件,执行24:
后面的语句2,跳出循环体。打印n的值5。此时n不小于5了条件k>
5不成立了,所以结束循环。整个程序的打印结果为235。
23.以下关于语句的叙述中正确的是
A)一个自定义函数中必须有一条语句
B)一个自定义函数中可以根据不同情况设置多条语句
C)定义成类型的函数中可以有带返回值的语句
D)没有语句的自定义函数在执行结束时不能返回到调用处
【解析】在函数中允许有多个语句,但每次调用只能有一个语句被执行,因此只能返回一个函数值,A选项描述错误。
定义成类型的函数,不允许从该函数取得返回值,也不允许使用语句,C选项描述错误。
没有语句的函数在执行到函数的最后一条语句后会自动返回到调用处,D选项描述错误。
因此B选项正确。
24.已定义以下函数
(*p)
{*p;
函数返回值是
A)一个整数
B)不确定的值
C)形参p中存放的值
D)形参p的地址值
【解析】返回值为指针变量指向的数据,该数据已被定义为整型。
因此A选项正确。
25.以下程序段完全正确的是
A)*p;
);
B)*p;
p);
C)k,*;
D)k,*p;
*;
【解析】A选项中错在没有对指针进行初始化,无效指针,并且在("
,)中无需再进行取地址操作;
B选项中没有对指针进行初始化,无效指针;
D选项中语句*;
的左端*p是指针所指内存空间的值,是地址,应为。
因此C选项正确。
26.设有定义
a[10],*;
以下能够代表数组元素a[3]的是
A)(*s)[3]
B)*(3)
C)*s[3]
D)*3
【解析】指针的赋值首先基类型必须一致,s二维数组名,是二维数组的首地址,其基类型是一个具有10个元素的字符数组。
p是一个字符指针变量,其基类型是一个字符,k是一个行指针,其基类型是具有3个元素的字符型数组。
所以A、C、D中两项的基类型不一致。
而B选项,s[0]是二维数组s的第一个元素,其代表第一行元素构成的数组的首地址,其相当于一维数组的数组名,其基类型是一个字符类型,和p基类型一致。
27.有以下程序
f(*q)
{0;
(<
5;
)(*q);
{a[5]={1,2,3,4,5},i;
f(a);
(0<
"
a[i]);
A)6,2,3,4,5,
B)2,2,3,4,5,
C)1,2,3,4,5,
D)2,3,4,5,6,
【解析】本题考查的是函数的地址调用,将数组名作为数组首地址进行传递,然后取数据元素值进行加1运算。
28.有以下程序
((*s)[4],n,k)
{m,i;
[0][k];
(1;
i<
n;
(s[i][k]>
m)
s[i][k];
m;
{a[4][4]={{1,2,3,4},
{11,12,13,14},
{21,22,23,24},
{31,32,33,34}};
(a,4,0));
A)4
B)34
C)31
D)32
【解析】本题重点考察二维数组名作为实参进行参数传递,在主函数中调用了函数,实参为二维数组名a和两个整数4、0,这样对应定义函数首部也有三种形式,这里采用了第一种形式,也就是行指针,这样在函数对s[i][j]进行操作实际上就是对主函数中的a[i][j]进行操作,再分析函数的作用便可知,是求二维数组第0列中最大的那个元素。
29.以下选项中正确的语句组是
A)*s;
{"
!
};
B)*s;
;
C)s[10];
D)s[];
【解析】A选项去掉大括号就正确了;
C选项和D选项应在定义时赋初值。
30.若有定义语句:
*s1="
*s2="
以下选项中,能够输出"
的语句是
A)((s12)0)(s2);
B)((s12)0)(s1);
C)((s12)1)(s1);
D)((s12)0)(s1);
【解析】
(s12)是字符串比较函数,比较规则是两个字符串自左向右逐个字符相比(按照码值大小),以第一个不相同的字符的大小作为比较结果。
因为'
<
,所以(s12)为负值,只有B选项正确。
31.有以下程序
(**p)
{
*p);
}
()
*a[]={"
"
(a);
A)
C)
【解析】本题主函数中定义了一个指针数组a,可以将它看成一个以字符指针为元素的一维数组。
和-般的一维数组名能赋给同类型指针变量一样,该字符指针数组也可以赋给指向字符指针的指针,所以数组名a可以用作函数()的实参。
在()函数中,操作使形参p往后移动一个字符指针的位置,即指针a[1]的位置。
故最后通过()函数输出的字符串为"
。
32.有以下程序,程序中库函数()用以判断中的字母是否为小写字母
(*p)
(p[i])
{
(p[i]'
'
(p[1]))
p[1][1]-'
a'
+'
A'
s1[100]="
!
(s1);
1);
A)!
B)!
C)!
D)!
【解析】调用函数后,实参数组名s1传给形参指针p,p也指向数组s1。
函数的功能是遍历字符数组中的所有字符,如果某一个字符是空格并且前一个字符是小写字母的话,就把前一个字符转换为大写。
程序中语句p[1][1]-'
即p[1][1]-32,意思是将p[1]中的字符转换为大写。
因此D选项正确。
33.有以下程序
f(x)
y;
(x01)(3);
y=x*x-f
(2);
z;
z=f(3);
z);
B)9
C)6
D)8
【解析】主函数中调用f函数,同时将数值3传递给变量x,执行条件与(01);
此时条件不成立,跳过(3);
,直接执行语句*
(2);
这里f
(2)为函数的递归调用,再次调用f函数,此时1,条件语句条件成立,返回3给f
(1),3*3-3=6,最后将6返回主函数,并进行输出。
34.有以下程序
(x[]n)
0,i;
)[i];
a[]={1,2,3,4,5},b[]={6,7,8,9},0;
(a,5)(b,4);
程序执行后的输出结果是
A)55
B)50
C)45
D)60
【解析】内部静态变量是始终存在的,当函数被调用退出后,内部静态变量会保存数据,再次调用该函数时,以前调用时的数值仍然保留着。
(a,5)的值是15,再次调用后15,所以(b,4)=45,45+15=60。
35.有以下结构体说明、变量定义和赋值语句
{[10];
}s[5],*;
[0];
则以下函数调用语句有错误的是
A)("
[0]);
B)("
C)("
(>
));
D)("
【解析】本题考查结构体的相关知识,题目中需要输入一个变量,要求参数为指针,而D选项中>
为一个变量,不是指针,所以错误。
36.若有以下语句
S
{g;
h;
}T;
以下叙述中正确的是
A)可用S定义结构体变量
B)可用T定义结构体变量
C)S是类型的变量
D)T是S类型的变量
【解析】本题考查重新声明一种结构体类型,那么T为结构体类型,而不是结构体变量,所以B选项正确。
37.有以下程序
A
a;
b[10];
c;
Af(At);
A{1001,"
1098.0};
6.1f\n"
Af(At)
1002;
(,"
1202.0;
t;
A)1002,1202.0
B)1002,1202.0
C)1001,1098.0
D)1001,1098.0
【解析】本题考查结构体变量的引用以及作为函数参数,题目虽然看似复杂,其实比较容易,f函数的参数是结构体变量,然后对参数重新赋值并返回,所以该题目的答案为B选项。
38.设有宏定义:
()(
(1)?
1:
0)
且变量m已正确定义并赋值,则宏调用:
(m,5)(m,7)
为真时所要表达的是
A)判断m是否能被5和7整除
B)判断m被5和7整除是否都余1
C)判断m被5或者7整除是否余1
D)判断m是否能被5或者7整除
【解析】本题考查逻辑运算符的相关概念,逻辑与若要为真,那么两边都要为真,所需要m都能被5和7整除都余1,所以选项B正确。
39.有以下程序
1,2,3,x;
x=(a^b);
A)3
B)1
C)2
D)0
【解析】本题考查位运算符以及相关运算,^为按位或,&
为按位与,那么a^b为3,再与c按位与仍然为3,所以答案为A选项。
40.有以下程序
k,n,a[6]={1,2,3,4,5,6};
=("
d2"
w"
(,"
a[0][1][2]);
a[3][4][5]);
();
r"
,);
\n"
k,n);
A)12
B)14
C)1234
D)123456
()函数向文件输出,将输出的内容输出到硬盘上的文件或是相当于文件的设备上执行两次后文件中有123456,所以D选项正确。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 全国 计算机等级考试 二级 语言 题库 选择题
![提示](https://static.bingdoc.com/images/bang_tan.gif)