计算机二级考试c语言及答案(江西考区)
(1)下列说法是正确的。
a)搜索长度为n的有序链表,最坏情况下需要的比较次数为n。
b)在长度为n的有序链表上进行二分搜索法,最坏情况下需要的比较次数为(n/2)。
c)对长度为n的有序链表进行二分搜索法,最差情况下比较次数为(log2n)。
d)对长度为n的有序链表进行二分搜索法,最坏情况下所需的比较次数为(nlog2n) (2)算法的时间复杂度是指
a)算法的执行时间
b)算法处理的数据量
c)算法程序中语句或指令的数量
d)算法在执行过程中所需的基本操作次数(3)软件按功能可分为应用软件、系统软件和支撑软件(或工具软件)。下列属于系统软件
a)编辑软件
b)操作系统
c)教育管理系统
d)调试浏览器(4)的软件(程序)的任务是
a)诊断和纠正程序中的错误
b)在程序中找到尽可能多的错误。
c)查找并纠正程序中的所有错误。
d)确定程序中错误的性质(5)数据流程图(DFD图)是
a)软件概要设计工具
b)详细软件设计工具
c)结构化方法的需求分析工具
d)面向对象方法的需求分析工具(6)软件生命周期可分为定义阶段、开发阶段和维护阶段。详细设计属于
a)定义阶段
b)发展阶段
c)维护阶段
d)以上三个阶段(7)数据库管理系统中负责数据模式定义的语言是
a)数据定义语言
b)数据管理语言
c)数据操作语言
d)数据控制语言(8)在由学生管理的关系数据库中,用于访问学生信息的数据单元是
a)文件
b)数据库
c)现场
d)记录(9)在数据库设计中,E-R图用于描述信息结构但不涉及信息在计算机中的表示,属于数据库设计。
a)需求分析阶段
b)逻辑设计阶段
c)概念设计阶段
d)在物理设计阶段(10)有如下两种关系R和T:
那么从关系K获得关系T的操作是
a)选择
b)投影
c)薪酬
d)和(11)下列说法是正确的。
A)C语言程序由过程和函数组成。
B)C语言函数可以嵌套调用,比如:fun(fun(x))
C)C语言函数不能独立编译。
d)在C语言中,除了main函数,其他函数不能作为单独的文件存在(12)。下列关于C语言的陈述是正确的。
a)C语言的注释不能夹在变量名或关键字之间。
b)C语言中的变量在使用前可以在任何地方定义。
C)在用C语言编写算术表达式时,运算符两边的操作数类型必须一致。
d)C语言中数值常量包含空格不影响常量值的正确表示(13)。在下面的C语言用户标识符中,执行以下操作是非法的
A)_1
B)AaBc
丙)甲_乙
D)a-b (14)如果定义的话,双a = 22int i=0,k = 18;,不符合C语言要求的赋值语句是
A)a=a++,i++;
b)I =(a+k)& lt;=(I+k);
c)I = a % 11;
d)我=!a;(15)有以下步骤。
# include & ltstdio.h & gt
主()
{ char a,b,c,d;
scanf("%c%c ",& amp一,& ampb);
c = getchar();d = getchar();
printf("%c%c%c%c\n ",a,b,c,d);
}
执行程序时,输入如下数据(从1列开始,
12 & lt;CR & gt
34 & ltCR & gt
那么输出结果是
A)1234
B)12
C)12
三
D)12
34(16)关于I在C语言中使用数据类型的说法中错误的是
a)如果要准确表示自然数,应该使用整数类型。
b)要保存多位小数的数据,应使用双精度类型。
c)如果要处理不同类型的相关数据,如“人员信息”,需要定义结构类型。
d)如果只处理“真”和“假”逻辑值,则应使用逻辑类型(17)。如果a是数值型,逻辑表达式(a==1)||(a!=1)是
A)1
B)0
C)2
d)如果不知道a的值,就无法确定下列选项中的(18)和If(a = = 1)a = b;else a++;具有不同语句功能的switch语句有
a)开关(a)
{ case:a = b;打破;& ltbr & gt默认:a++;& ltbr & gt} & ltbr & gtb)开关(a = = 1)& lt;br & gt{案例0:a = b;打破;& ltbr & gt案例1:a++;& ltbr & gt}
c)开关(a)
{默认值:a++;打破;& ltbr & gt案例1:a = b;& ltbr & gt}
d)开关(a==1)
{ case 1:a = b;打破;& ltbr & gt案例0:a++;& ltbr & gt} (19)有以下嵌套的if语句。
如果(a & ltb)
如果(a & ltc)k = a;
else k = c;
其他
if(b & lt;c)k = b;
else k = c;
在下列选项中,与上述if语句等效的语句是
A)k=(a
B)k=(a丙)?b:c);
C)k=(a
D)k=(a
# include < s7dio.h >
主()
{in i,j,m = 1;
for(I = 1;I < 3;i++)
{ for(j = 3;j > O;j -)
{ if(I * j)> 3)break;& ltbr & gtm = I * j;& ltbr & gt}
}
printf("m=%d\n ",m);
}
程序运行后的输出结果是
A)m=6
B)m=2
C)m=4
D)m=5 (21)有以下程序。
#include(stdio.h >
主()
{ int a = l;b = 2;
for(;a < 8;a++){ b++ = a;a+= 2;}
printf("%d,%d\n ",a,b);
}
程序运行后的输出结果是
9,18
8,11
7,11
D)10,14 (22)有以下程序,其中k的初始值是一个八进制数。
# include & ltstdio.h & gt
主()
{ int k = 011;
printf("%d\n ",k++);
}
程序运行后的输出结果是
A)12
B)11
C)10
D)9(23)下列说法中,正确的是
a)字符;s= "奥林匹克";
char s[7];s= "奥林匹克";
c)字符;s = { " Olympic " };
d)char s[7];s = { " Olympic " };(24)下列关于退货的说法正确的是
a)自定义函数中必须有return语句。
b)可以根据不同情况,在一个自定义函数中设置多个return语句。
c)定义为void类型的函数可以有一个带有返回值的return语句。
d)没有返回语句的自定义函数在执行结束时不能返回到调用位置(25)。可以正确定义数组的语句是
a)整数[0..2008];
b)int num[];
c)int N = 2008;
整数[N];
d)#定义编号2008
整数[N];(26)有以下程序
# include & ltstdio.h & gt
void fun(char *c,int d)
{ * c = * c+1;d = d+1;
printf("%c,%c,",*c,d);
主()
{char b='a ',a = ' A
乐趣(& ampb,a);printf("%e,%e\n ",b,a);
}
程序运行后的输出结果是
A)b,B,B,A
B)b,B,B,A
C)a、B、B、a
D)a,B,a,B(27) int (* pt) [3]如果定义的话;,下列说法是正确的。
a)定义了三个基本类型为int的指针变量。
b)用基本类型int定义具有三个元素的指针数组pt。
c)定义一个名为*pt的三元素整数数组。
d)定义了一个名为pt的指针变量,可以指向一个每行三个整数元素的二维数组(28),定义为双a[10],* s = A;,下列可以代表数组元素a[3]的是
A)(*s)[3]
B)*(s+3)
C)*s[3]
D)*s+3 (29)有以下过程。
#include(stdio.h)
主()
{int a[5]={1,2,3,4,5},b[5]={O,2,1,3,0},I,s = 0;
for(I = 0;I < 5;i++)s = s+a[b[I]]);
printf("%d\n ",s);
}
程序运行后的输出结果是
A)6
B)10
C)11
D)15 (30)有以下程序
# include & ltstdio.h & gt
主()
{int b [3][3]={O,1,2,0,1,2,O,1,2},I,j,t = 1;
for(I = 0;我& lt3;i++)
for(j = ij & lt;=1;j++)t+= b[I][b[j][I]];
printf("%d\n ",t);
}
程序运行后的输出结果是
A)1
B)3
C)4
D)9(31)如果有以下定义和句子...这是2010全国C语言考试的部分题型,楼主可以下载转自:www.k8xx.com。