国家二级C语言机试(选择题)模拟试卷229(题后含答案及解析)

国家二级C语言机试(选择题)模拟试卷229 (题后含答案及解析)

题型有:1.

1. 以下选项中非法的C语言字符常量是

A.’\b’

B.’\007’

C.’aa’

D.’\xaa’

正确答案:C

解析:一个字符常量代表ASCII字符集中的一个字符,在程序中用单引号把一个字符括起来作为字符常量。 知识模块:C语言基础知识

2. 在调用函数时,如果参数是简单变量,它与对应形参之间的数据传递方式是( )。

A.单向值传递

B.地址传递

C.由实参传给形参,再由形参传回实参

D.传递方式由用户指定

正确答案:A

解析:C语言规定,简单变量或数组元素为实参时,是单向值传递,即实参可以改变形参的值,但形参不能改变实参的值。 知识模块:函数与数组

3. 数据库应用系统中的核心问题是

A.数据库设计

B.数据库系统设计

C.数据库维护

D.数据库管理员培训

正确答案:A

解析:在数据库应用系统中的一个核心问题就是设计一个能满足用户要求,性能良好的数据库,这就是数据库设计。所以数据库设计是数据库应用的核心。

知识模块:公共基础知识

4. 合法的C语言标识符是( )。

A._1_

B.2_8

C.void

D.unsigned

正确答案:A

解析:用户的标识符只能由字母或下划线开始,其他任何字符开始均会出错。一般强调文见其义的命名方法。但是C语言中的保留字不能用作用户的标识符。而选项C和D全部为保留字,选项B中以数字开头,这些都不正确。 知识模块:C语言基础知识

5. 以下叙述中错误的是( )。

A.gets函数用于从终端读入字符串

B.getehar函数用于从磁盘文件读入字符

C.fputs函数用于把字符串输出到文件

D.fwrite函数用于以二进制形式输出数据到文件

正确答案:B

解析:本题考查字符处理函数和文件读写函数,属于基础知识。其中B选项的getchar函数用于从终端读入字符。 知识模块:基本语句

6. 有两个关系R,S如下,由关系R和S通过运算得到关系T,则所使用的操作为( )。

A.并

B.自然连接

C.笛卡尔积

D.差

正确答案:D

解析:由关系可以看出,关系T是由关系R中减去关系R和关系S共有的元组得到的,所以答案选择D。 知识模块:数据库设计基础

7. 数据库设计过程不包括

A.概念设计

B.逻辑设计

C.物理设计

D.算法设计

正确答案:D

解析:数据库设计的四个阶段是:需求分析、概念设计、逻辑设计和物理设计。 知识模块:公共基础知识

8. 以下关于逻辑运算符两侧运算对象的叙述中正确的是( )。

A.可以是任意合法的表达式

B.只能是整数0或非0整数

C.可以是结构体类型的数据

D.只能是整数0或1

正确答案:A

解析:逻辑运算符两侧的运算对象可以任意合法的表达式,最终会根据两侧表达式计算出的数值来判定该逻辑表达式为真(1)或假(0)。答案选A。 知识模块:数据类型、运算符与表达式

9. 关于字符数组定义中存在语法错误的是( )。

A.char ss[][20]={‘‘right’’};

B.char*ss[6];ss[1]=‘‘right?’’;

C.char*ss[]={‘‘right?’’};

D.char ss[6][20];ss[1]=‘‘right?’’;

正确答案:D

解析:本题考查字符数组,选项D中定义了二维数组ss,可以用于存储字符串,但是字符串的存储不能通过赋值,仅可以初始化或者输入得到,而选项C和A不同,选项B为指针数组,对于指针变量可以保存常量字符串的地址。 知识模块:函数和数组

10. C语言程序中,运算对象必须是整型数的运算符是

A./

B.%

C.&&

D.*

正确答案:B

解析:%要求参与运算的运算量为整型,其他三个运算符对于参与运算的运算量没有直接要求。 知识模块:C语言基础知识

11. 关于结构体说明和变量定义中,正确的是( )。

A.typedef struct abc{int n;double m;}ABC;ABC x,y;

B.struct abc{int n;float m};struct abc x,y;

C.struct ABC{int n;float m;}struct ABC x,y;

D.struct abc{int n;float m;};abc x,y;

正确答案:A

解析:结构体的定义是正常的C语言语句。选项B中结构体定义中每个成员后面的分号都不能省略,选项C结构体类型定义完毕后的}外没加分号,选项D中定义变量要加上关键字struct。 知识模块:结构体及文件操作

12. 以下不构成无限循环的语句或语句组是

A.n=0;do{++n;}while(n<=0);

B.n=0;while(1){n++;}

C.n=10;while(n);{n--;}

D.for(n=0,i=1;;i++)n+=i;

正确答案:A

解析:选项B)中while(1)永远为真所以进入死循环,选项C)中while(n=10)同理,选项D)中for循环没有循环限定条件也将进入无限循环,只有选项A)中while(n<=0)循环判定成立,循环将不进入无限循环。 知识模块:C语言程序设计

13. 以下叙述中正确的是

A.break语句不能用于提前结束for语句的本层循环

B.continue语句使得整个循环终止

C.使用break语句可以使流程跳出switch语句体

D.在for语句中,continue与break的效果是一样的,可以互换

正确答案:C

解析:用break语句可以使程序流程跳出switch语句体,也可用break语句在循环结构中终止循环体,从而提前结束循环。而continue语句的作用是结束本次循环,即跳过本次循环体中continue语句后面的语句,立刻进行下一次的循环条件判断,可以理解为仅结束本次循环。 知识模块:C语言程序设计

14. 若变量已正确定义for( x=0,y=0; ( y!=99 && x<4 ); x++ )则以上for循环( )。

A.执行4次

B.执行3次

C.执行无限次

D.执行次数不定

正确答案:A

解析:for语句的一般形式为”for(表达式1; 表达式2; 表达式3 ) {循环体语句}”,其执行流程是先计算表达式1,之后计算表达式2,根据表达式2的值来判定是否进行循环,若为真,则执行循环体,循环体执行完毕之后再计算表达式3的值。该循环的循环条件是(y!=99 && x<4),每次循环后x自增1,x由0自增到3,循环执行4次,答案选A。 知识模块:循环结构程序设计

15. 下列选项中,能够满足“只要字符串s1等于字符串s2,则执行ST”要求的是

A.if(s1==s2)ST;

B.if(strcpy(s1,s2)==1)ST;

C.if(strcmp(s2,s1)==0)ST;

D.if(s1-s2==0)ST;

正确答案:C

解析:在C语言中要对两个字符串的大小进行比较,就需要调用字符串比较函数strcmp( ),如果这个函数的返回值等于0,说明两个字符串相等。 知识模块:C语言程序设计

16. 有以下程序 #include <stdio.h> main( ) { FILE

*pf; char *s1=“China”,*s2=“Beijing”; pf=fopen(“abc.dat”,”wb+”);

fwrite(s2,7,1,pf); rewind(pf); /*文件位置指针回到文件开头*/

fwrite(s1,5,1,pf); fclose(pf); } 以上程序执行后abc.dat文件的内容是

A.Chinang

B.China

C.ChinaBeijing

D.BeijingChina

正确答案:A

解析:本题主要查函数fwtite的使用。函数fwrite的凋用形式为:int

fwrite(chat*pt,unsigned sizc,unsigncd n,FILE*fp);其功能是把pt所指向的n*size个字节输出到fn所指文件中。在本题中fwritc(s2,7,1,pf);的功能是把字符串“Beijing”输入到文件abc.dat中,然后调用rewind(pf),把文件位置指针回到文件开头,再调刚fwrite(s1,5,1,pf)把字符串“china”写入到文件abc.dat中,所以此时文件abc.dat的内容为Chinang。 知识模块:结构体、共用体、位运算及文件操作

17. 有以下程序 #include<stdio.h> main( ) {int i,j,m=55;

for(i=1;i<=3;i++) for(j=3;j<=i;j++)m=m%j; printf(“%d\n”,m); }程序的运行结果是

A.0

B.1

C.2

D.3

正确答案:B

解析:在程序中,内层循环判断条件为““j<=i”,而i的初值为3,故当外层循环变量i的值为1和2时,内层循环体都不会被执行。只有当i和j都等于3时循环才会执行一次。因为m的值为55对3求余结果为1。 知识模块:C语言程序设计

18. 有以下程序#include <stdio.h>#define N 4void fun(int a[][N], int

b[]){ int i;for (i=0; i<N; i++) b[i] = a[i][i] - a[i][N-1-i];}main( ){ int

x[N][N]={{1, 2, 3, 4}, {5, 6, 7, 8}, {9,10,11,12}, {13,14,15,16}}, y[N], i;fun (x,

y);for (i=0; i<N; i++) printf(“%d,”, y[i]); printf(“\n”); }程序运行后的输出结果是( )。

A.-3,-1,1,3,

B.-12,-3,0,0,

C.0,1,2,3,

D.-3,-3,-3,-3,

正确答案:A

解析:函数fun( )的功能是计算b[i]:b[0]=a[0][0]-a[0][3]=-3,

合集下载

国家二级C语言机试(公共基础知识)模拟试卷6(题后含答案及解析)

国家二级C语言机试(公共基础知识)模拟试卷6(题后含答案及解析)

国家二级C语言机试(公共基础知识)模拟试卷6 (题后含答案及解析)

题型有:1. 选择题

选择题

1. 在E-R图中,用来表示实体联系的图形是

A.椭圆形

B.矩形

C.菱形

D.三角形

正确答案:C

解析:构成E-R图的基本要素是实体型、属性和联系,其表示方法为:实体型(Entity)一用矩形表示;属性(Attribute)-椭圆形表示,联系(Relationship)一用菱形表示,菱形框内写明联系名。 知识模块:公共基础知识

2. 在E-R图中,用来表示实体的图形是

A.矩形

B.椭圆形

C.菱形

D.三角形

正确答案:A

解析:在E一R图中,用矩形表示实体集,在矩形内写上该实体集的名字;用椭圆形表示属性;用菱形(内部写上联系名)表示联系。 知识模块:公共基础知识

3. 数据库设计中,用E-R图来描述信息结构但不涉及信息在计算机中的表示,它属于数据库设计的

A.需求分析阶段

B.逻辑设计阶段

C.概念设计阶段

D.物理设计阶段

正确答案:C

解析:E—R模型(实体联系模型)是将现实世界的要求转化成实体、联系、属性等几个基本概念,以及它们间的两种基本联接关系,并且可用一种图非常直观地表示出来。它属于数据库设计的概念设计阶段。 知识模块:公共基础知识

4. 一间宿舍可住多个学生,则实体宿舍和学生之间的联系是

A.一对一

B.一对多

C.多对一

D.多对多

正确答案:B

解析:两个实体集间的联系可以有下面几种:一对一的联系、一对多或多对一的联系和多对多的联系。由于一个宿舍可以住多个学生,所以它们的联系是一对多联系。 知识模块:公共基础知识

5. 一个工作人员可使用多台计算机,而一台计算机被多个人使用,则实体工作人员与实体计算机之间的联系是

A.一对一

B.一对多

C.多对多

D.多对一

正确答案:C

解析:如果一个工作人员只能使用一台计算机且一台计算机只能被一个工作人员使用,则关系为一对一:如果一个工作人员可以使用多台计算机,但是一台计算机只能被一个工作人员使用,则关系为一对多;如果一个工作人员可以使用多台计算机,一台计算机也可以被多个工作人员使用,则关系为多对多。 知识模块:公共基础知识

国家二级C语言机试(选择题)模拟试卷107(题后含答案及解析)

国家二级C语言机试(选择题)模拟试卷107(题后含答案及解析)

国家二级C语言机试(选择题)模拟试卷107 (题后含答案及解析)

题型有:1. 选择题

选择题

1. 下列选项中不属于结构化程序设计原则的是( )。

A.可封装

B.自顶向下

C.模块化

D.逐步求精

正确答案:A

解析:结构化程序设计的思想包括:自顶向下、逐步求精、模块化、限制使用goto语句,所以选择A。 知识模块:选择题

2. 有两个关系R和T如下:则由关系R得到关系T的操作是( )。

A.投影

B.交

C.选择

D.并

正确答案:A

解析:从表图中可以看出,关系T是从关系R中选取一部分字段(A和C)及其值构成新的关系,是一种纵向操作产生新列,属于投影,正确选项为A。 知识模块:选择题

3. 有以下程序:#include <stdio.h>main( ){printf(″%d\n”,NULL);}程序运行后的输出结果是( )。

A.1

B.变量无定义,输出不确定

C.—1

D.0

正确答案:D

解析:NULL为一个符号常量,对应的ASCⅡ码值为0,答案选D。 知识模块:选择题

4. 有以下程序:#include<stdio.h>#define f(x)x*x*xmain( ){int a=3,s,t;s=f(a+1);t=f((a+1));printf(″%d,%d\n″,s,t);}程序运行后的输出结果是( )。

A.10,64

B.10,10

C.64,10

D.64,64

正确答案:A

解析:C语言中带参数的宏可以理解为用参数直接替代定义式中的变量,而不经过任何修改。所以s=f(a+1)=a+1*a+1*a+1,t=f((a+1))=(a+1)*(a+1)*(a+1),所以有无括号的运算结果是不同的。 知识模块:选择题

5. 有以下程序:#include<stdio.h>int f(int x,int y){return((y—x) * x);}void

国家二级C语言(数组)机试模拟试卷4(题后含答案及解析)

国家二级C语言(数组)机试模拟试卷4(题后含答案及解析)

国家二级C语言(数组)机试模拟试卷4 (题后含答案及解析)

题型有:1. 选择题

选择题

1. 若有定义:int x[10],*pt=x;,则对x数组元素的正确引用是( )。

A.pt+3

B.*&x[10]

C.*(pt+10)

D.*(x+3)

正确答案:D

解析:没有A选项的引用形式。*与&放在一起作用抵消,但x[10]下标10超出了数组下标范围,所以B选项错误。最大只能引用到x[9],而*(pt+i)表示引用指针pt所指元素后的第i个元素,所以C选项错误,最大只能为*(pt+9)。D选项正确。 知识模块:数组

2. 有以下程序:#include<stdio.h>main( ){int i,s=0,t[]={1,2,3,4,5,6,7,8,9};for(i=0;i<9;i+=2)s+=*(t+i);printf(“%d\n”,s);}程序的运行结果是( )。

A.20

B.25

C.45

D.36

正确答案:B

解析:统计1~9这9个数中的奇数和,此题考查指向数组的指针。C语言规定数组名代表数组的首地址,也就是第一个元素的地址,因此*(t+i)代表数组的第i+1个元素。程序的运行结果是1+3+5+7+9=25。 知识模块:数组

3. 有以下程序:#include<stdio.h>main( ){int s[12]={1,2,3,4,4,3,2,1,1,1,2,3},c[5]={0},i;for(i=0;i<12;i++)e[s[i]]++;for(i=1;i<5;i++)printf(“%d”,c[i]);printf(“\n”);}程序的运行结果是( )。

A.2 3 4 4

B.4 3 3 2

C.1 2 3 4

D.1 1 2 3

正确答案:B

解析:在for(i=0;i<12;i++)c[s[i]]++中,数组元素s[i]的值作为数组c的下标,当退出循环时,数组c的4个元素的值分别为4、3、3、2,因此B选项正确。 知识模块:数组

国家二级C语言机试(选择题)模拟试卷118(题后含答案及解析)

国家二级C语言机试(选择题)模拟试卷118(题后含答案及解析)

国家二级C语言机试(选择题)模拟试卷118 (题后含答案及解析)

题型有:1.

1. 下列叙述中正确的是( )。

A.二分查找法只适用于顺序存储的有序线性表

B.二分查找法适用于任何存储结构的有序线性表

C.二分查找法适用于有序循环链表

D.二分查找法适用于有序双向链表

正确答案:A

解析:二分查找法(又称对分查找法)只适用于顺序存储的有序表。在此所说的有序表是指线性表的中元素按值非递减排列(即从小到大,但允许相邻元素值相等)。 知识模块:公共基础知识

2. 下列不属于软件设计阶段任务的是( )。

A.软件总体设计

B.算法设计

C.制定软件确认测试计划

D.数据库设计

正确答案:C

解析:从技术观点上看,软件设计包括软件结构设计、数据设计、接口设计、过程设计,所以A、B、D选项正确,C选项为软件测试阶段的任务。 知识模块:公共基础知识

3. 以下选项中合法的实型常量是

A..914

B.3.13e-2.1

C.0

D.2.0”10

正确答案:A

解析:实型常量又称实数或浮点数,一般用小数形式或指数形式来表示。实型常量分为以下两种形式: ①小数形式:小数形式是山数字和小数点组成的一种实数农示形式。例如0.345、.123、0.0等是合法的实数。这种表示形式必须要有小数点。 ②指数形式:在C语言中,用“e”或“E”后跟一个整数来表示以10为底的幂数。注意:字母“e”或“E”之前必须要有数字,后面的指数必须为整数。 选项B)中e后必须为整数,选项C)没有小数点,向选项D)则出现非法字符*。 知识模块:C语言基础知识

4. 以下叙述中正确的是

A.整型常量和实型常量都是数值型常量

B.常量的类型不能从字面形式上区分,需要根据类型名来决定

C.预定义的标识符是C语言关键字的一种,不能另作它用

D.只能在函数体内定义变量,其他地方不允许定义变量

正确答案:A

解析:整型常量和实型常量都是数值型常量,选项A正确;常量的类型可以从字面上区分,比如整型常量不能有小数点,组成字符为0~9等,选项B错误:预定义标识符,即预先定义并具有特定含义的标识符,可以另作他用,不过更改了原有的含义,选项C错误;变量可以定义住程序中任何的地方,属于不同的变量,选项D错误。 知识模块:C语言基础知识

国家二级C语言机试(函数和数组)模拟试卷10

国家二级C语言机试(函数和数组)模拟试卷10

国家二级C语言机试(函数和数组)模拟试卷10

(总分:54.00,做题时间:90分钟)

一、 选择题(总题数:27,分数:54.00)

1.有以下程序 #include<stdio.h>> main() {int a[]={10,20,30,40),*p=a,i; for(i=0;i<=3;i++){a[i]=*p;p++;} pfintf("%d\n",a[2]);}程序运行后的输出结果是

(分数:2.00)

A.20

B.30 √

C.10

D.40

解析:解析:因为指针变量p的初始值指向数组a,所以执行for循环语句后,数组a中的元素的值不变。

2.若有以下程序 main(){int i,j=0; char a[]="How are you!"; for(i=0;a[i];i++)

if(a[i]!='')a[j++]=a[i]; a[j]='\0'; printf("%s\n",a);}则程序的输出结果是

(分数:2.00)

A.Howareyou

B.Hay!

C.Howareyou! √

D.How are you!

解析:解析:主函数中利用for循环访问字符串的每一个字符,判断当前字符是否为空格,如果是空格则删除。因此删除字符串”How are you!”中空格以后,字符串为How are you!。

3.若有以下程序 #include<stdio.h> main(){int i,j=0; char a[]="How are you!",b[10]; for(i=0;a[i];i++) if(a[i]=='')b[j++]=a[i+1]; b[j]='\0'; printf("%s\n",b);}则程序的输出结果是

(分数:2.00)

A.Howareyou

B.Hay!

C.Howareyou!

D.ay √

解析:解析:主函数中利用for循环访问字符串a的每一个字符,判断当前字符是否为空格,如果是空格则保存该空格后面的一个字符存放到字符数组b中。在字符串"How are you!"中,第一个空格后面字符为'a',第二个空格后面字符为'v'。

国家二级C语言机试(C语言基础知识)模拟试卷20

国家二级C语言机试(C语言基础知识)模拟试卷20

国家二级C语言机试(C语言基础知识)模拟试卷20

(总分:60.00,做题时间:90分钟)

一、 选择题(总题数:30,分数:60.00)

1.我们所写的每条C语句,经过编译最终都将转换成二进制的机器指令。关于转换以下说法错误的是

(分数:2.00)

A.一条C语句可能会被转换成多条机器指令

B.一条C语句对应转换成一条机器指令 √

C.一条C语句可能会被转换成零条机器指令

D.某种类型和格式的C语句被转换成机器指令的条数是固定的

解析:解析:由C语言编写的程序,通过编译、链接转换成可以让机器识别的01二进制指令。这些二进制指令命令机器计算,这些就是机器指令,而C语言的语句条数和机器指令的条数不是一对一的关系。

2.以下选项中不属于C语言程序运算符的是

(分数:2.00)

A.sizeof

B.()

C.<> √

D.&&

解析:解析:sizeof为测试内存的运算符,()为算术运算符,&&为逻辑运算符。而<>不是C语言的运算符,C语言中!=表示不等于。

3.若变量已正确定义并赋值,以下不能构成C语句的选项是

(分数:2.00)

A.A=a+b;

B.B++;

C.a=a+b √

D.A?a:b;

解析:解析:C语言语句的表示为分号,不加分号的表达式不能看成C语句。

4.以下叙述中正确的是

(分数:2.00)

A.程序必须包含所有三种基本结构才能成为一种算法

B.如果算法非常复杂,则需要使用三种基本结构之外的语句结构,才能准确表达

C.只有简单算法才能在有限的操作步骤之后结束

D.我们所写的每条C语句,经过编译最终都将转换成二进制的机器指令 √

解析:解析:C语句构成了函数,函数构成的程序,经过编译转换成二进制代码后可以运行,算法是指为解决某个特定问题而采取的确定且有限的步骤,可以利用代码来描述算法,而算法+数据结构才是程序,结构化的程序由顺序结构、循环结构和选择结构三种基本结构组成。由这三种基本结构组成的算法可以解决任何复杂的问题,反之则不一定,所有算法必须在有限步骤后结束。

全国计算机等级考试二级-基础知识和C语言程序设计 模拟考试试卷及答案(四)

1

全国计算机等级考试二级-基础知识和C语言程序设计

模拟考试试卷及答案(四)

一、选择题

(1)通常所说的主机主要包括

A)CPU B)CPU和内存

C)CPU、内存与外存 D)CPU、内存与硬盘

(2)在微机系统中,最基本的输入输出模块BIOS存放在

A)RAM中 B)ROM中 C)硬盘中 D)寄存器中

(3)一个24*24点阵的汉字字形信息所占的字节数为

A)2 B)24 C)32 D)72

(4)bit的意思是

A)字 B)字长 C)字节 D)二进制位

(5)某学校的工资管理程序属于

A)系统程序 B)应用程序

C)工具软件 D)文字处理软件

(6)与十六进制数BB等值的十进制数是

A)187 B)188 C)185 D)186

(7) 设一张软盘已染上病毒,能清除病毒的措施是

A)删除该软盘上的所有文件 B)格式化该软盘

C)删除该软盘上的所有可执行文件 C)删除该软盘上的所有批处理文件 2

(8)一张3.5英寸双面高密度软盘片的容量为

A)360KB B)720KB C)1.44MB D)1.2MB

(9)与二进制小数0.1等值的十六进制小数为

A)0.1 B)0.2 C)0.4 D)0.8

(10)DOS系统的热启动与冷启动的不同之处为热启动时

国家二级C语言程序设计机试选择题模拟试卷2_真题-无答案

国家二级C语言程序设计机试(选择题)模拟试卷2

(总分80,考试时间90分钟)

1. 选择题

1. 下列叙述中正确的是( )。

A. 一个算法的空间复杂度大,则其时间复杂度也必定大

B. 一个算法的空间复杂度大,则其时间复杂度必定小

C. 一个算法的时间复杂度太,则其空间复杂度必定小

D. 算法的时间复杂度与空间复杂度没有直接关系

2. 下列叙述中正确的是( )。

A. 循环队列中的元素个数随队头指针与队尾指针的变化而动态变化

B. 循环队列中的元素个数随队头指针的变化而动态变化

C. 循环队列中的元素个数随队尾指针的变化而动态变化

D. 以上说法都不对

3. 一个栈的初始状态为空。现将元素1,2,3,A,B,C依次入栈,然后再依次出栈,则元素出栈的顺序是( )。

A. 1,2,3,A,B,C B. C,B,A,1,2,3

C. C,B,A,3,2,1 D. 1,2,3,C,B,A

4. 一棵二叉树中共有80个叶子结点与70个度为1的结点,则该二叉树中的总结点数为( )。

A. 219 B. 229

C. 230 D. 231

5. 对长度为10的线性表进行冒泡排序,最坏情况下需要比较的次数为( )。

A. 9 B. 10

C. 45 D. 90

6. 下列各项中,对对象概念描述正确的是( )。

A. 对象间的通信靠消息传递 B. 对象是名字和方法的封装体

C. 任何对象必须有继承性 D. 对象的多态性是指一个对象有多个操作

7. 下列各项中,不属于软件设计阶段任务的是( )。

A. 软件总体设计 B. 算法设计

C. 制订软件并确认测试计划 D. 数据库设计

8. 一般情况下,当对关系R和S进行自然连接时,要求R和s含有一个或者多个共有的( )。

A. 记录 B. 行

C. 属性 D. 元组

9. 下列各项与栈结构有关联的是( )。

下半年计算机二级考试C语言模拟试题及答案四

下半年计算机二级考试C语言模拟试题及答案四

2015年下半年计算机二级考试C语言模拟试题及答案(四)

一、选择题

1.已知函数的调用形式:fread(buffer,size,count,fp);其中buffer代表的是(B)。

A、一个存储区,存放要读的数据项

B、一个指针,指向要读入数据的存放地址

C、一个文件指针,指向要读的文件

D、一个整数,代表要读入的数据项总数

2.结构体类型的定义允许嵌套是指(A)。

A、成员是已经或正在定义的结构体型

B、定义多个结构体型

C、成员可以重名

D、结构体型可以派生

3.对结构体类型的变量的成员的访问,无论数据类型如何都可使用

的运算符是(B)。

A、&

B、.

C、*

D、->

4.若有以下的定义:int t[3][2];能正确表示t数组元素地址的表达式是(D)。

A、&t[1]

B、t[3]

C、&t[3][2]

D、t[2]

5.若有说明:int *p,m=5,n;以下正确的程序段是(D)。

A、scanf("%d",&n);*p=n; B、p=&n;scanf("%d",*p)

C、p=&n;scanf("%d",&p);

D、p=&n;*p=m;

6.若定义:int a=511,*b=&a;, 则printf("%d\n",*b);的输出结果为(D)。

A、无确定值

B、a的地址

C、512

D、511

7.下列说法中正确的是(B ).

A、函数调用不占运行时间,只占编译时间.

B、宏替换不占运行时间,只占编译时间.

C、有参数的宏定义,就是函数.

D、在定义宏时,宏名与带参数的括弧之间可以加空格.

C语言程序中,若对函数类型未加声明,则函数的类型系统默认为(C)。

A、void

B、double

C、int

D、char

8.若已定义的函数有返回值,则以下关于该函数调用的叙述中错误的是(A)。

A、函数调用可以作为一个函数的形参

B、函数调用可以作为一个函数的实参

国家二级(C语言)机试历年真题试卷汇编18

国家二级(C语言)机试历年真题试卷汇编18

(总分:86.00,做题时间:90分钟)

一、 选择题(总题数:40,分数:80.00)

1.下列叙述中错误的是( )。

(分数:2.00)

A.算法的时问复杂度与算法所处理数据的存储结构有直接关系

B.算法的空间复杂度与算法所处理数据的存储结构有直接关系

C.算法的时间复杂度与空间复杂度有直接关系 √

D.算法的时间复杂度与算法程序执行的具体时间是不一致的

解析:解析:算法的时间复杂度是指执行算法所需要的计算工作量。数据的存储结构直接决定数据输入,而这会影响算法所执行的基本运算次数,A项正确。算法的空间复杂度是指执行这个算法所需要的内存空间,其中包括输入数据所占的存储空间,B项正确。而算法的时间复杂度与空间复杂度没有直接关系,C项错误。算法程序执行的具体时间受到所使用的计算机、程序设计语言以及算法实现过程中的许多细节所影响,而算法的时间复杂度与这些因素无关,所以是不一致的,D项正确。

2.在满足实体完整性约束的条件下( )。

(分数:2.00)

A.一个关系中应该有一个或多个候选关键字 √

B.一个关系中只能有一个候选关键字

C.一个关系中必须有多个候选关键字

D.一个关系中可以没有候选关键字

解析:解析:实体完整性约束要求关系的主键中属性值不能为空值,因此本题答案为A。

3.下面描述中,不属于软件危机表现的是( )。

(分数:2.00)

A.软件过程不规范 √

B.软件开发生产率低

C.软件质量难以控制

D.软件成本不断提高

解析:解析:软件危机主要表现在:软件需求的增长得不到满足;软件开发成本和进度无法控制;软件质量难以保证;软件不可维护或维护程度非常低;软件的成本不断提高;软件开发生产率的提高赶不上硬件的发展和应用需求的增长。因此本题答案为A。

4.下列各项中不属于需求分析阶段任务的是( )。

(分数:2.00)

A.确定软件系统的功能需求

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档