计算机系统二级无纸化选择题题库7.docx
- 文档编号:26179163
- 上传时间:2023-06-17
- 格式:DOCX
- 页数:22
- 大小:57.81KB
计算机系统二级无纸化选择题题库7.docx
《计算机系统二级无纸化选择题题库7.docx》由会员分享,可在线阅读,更多相关《计算机系统二级无纸化选择题题库7.docx(22页珍藏版)》请在冰豆网上搜索。
计算机系统二级无纸化选择题题库7
选择题题库7
1.下列叙述中正确的是( )。
A)循环队列是队列的一种链式存储结构
B)循环队列是队列的一种顺序存储结构
C)循环队列是非线性结构
D)循环队列是一种逻辑结构
2.下列关于线性链表的叙述中,正确的是( )。
A)各数据结点的存储空间可以不连续,但它们的存储顺序与逻辑顺序必须一致
B)各数据结点的存储顺序与逻辑顺序可以不一致,但它们的存储空间必须连续
C)进行插入与删除时,不需要移动表中的元素
D)以上说法均不正确
3.一棵二叉树共有25个结点,其中5个是叶子结点,则度为1的结点数为( )
A)16
B)10
C)6
D)4
4.在下列模式中,能够给出数据库物理存储结构与物理存取方法的是( )。
A)外模式
B)内模式
C)概念模式
D)逻辑模式
5.在满足实体完整性约束的条件下( )。
A)一个关系中应该有一个或多个候选关键字
B)一个关系中只能有一个候选关键字
C)一个关系中必须有多关键字个候选
D)一个关系中可以没有候选关键字
6.
A)自然连接
B)交
C)除
D)并
7.下面描述中,不属于软件危机表现的是( )。
A)软件过程不规范
B)软件开发生产率低
C)软件质量难以控制
D)软件成本不断提高
8.下面不属于需求分析阶段任务的是( )。
A)确定软件系统的功能需求
B)确定软件系统的性能需求
C)需求规格说明书评审
D)制定软件集成测试计划
9.在黑盒测试方法中,设计测试用例的主要根据是( )。
A)程序内部逻辑
B)程序外部功能
C)程序数据结构
D)程序流程图
10.在软件设计中不使用的工具是( )。
A)系统结构图
B)PAD图
C)数据流图(DFD图)
D)程序流程图
11.以下可用作C语言用户标识符的是( )。
A)void,define,WORD
B)a3 b3, 123,IF
C)FOR,--abc,Case
D)2a,Do,Sizeof
12.以下叙述中错误的是( )。
A)C语言的可执行程序是由一系列机器指令构成的
B)用C语言编写的源程序不能直接在计算机上运行
C)通过编译得到的二进制目标程序需要连接才可以运行
D)在没有安装C语言集成开发环境的机器上不能运行C源程序生成的.exe文件
13.以下4个选项中,不能看作一条语句的是( )。
A);
B)a=5,b=2.5,c=3.6;
C)if(b!
=5)x=2;y=6;
D)returnj;
14.以下不能正确
计算代数式值的C语言表达式是( )。
A)
B)
C)
D)
15.若有说明:
int*p,m=5,n;,以下正确的程序段是( )。
A)p=&n;scanf("%d",&p);
B)p=&n;scanf("%d",*p)
C)scanf("%d",&n);*p=n;
D)p=&n;*p=m;
16.以下程序的输出结果是( )。
main()
{
inta=20;
printf("%d,%o,%x\n",a,a,a);
}
A)20,024,0x14
B)20,24,14
C)20,0x14,024
D)20,20,20
17.下面程序的运行结果是( )
main()
{
inty=5,x=14;y=((x=3*y,x+6),x-1);
printf("x=%d,y=%d",x,y);
}
A)x=27,y=27
B)x=12,y=13
C)x=15,y=14
D)x=y=27
18.设变量x和y均已正确定义并赋值。
以下if语句中,在编译时将产生错误信息的是( )。
A)if(x++);
B)if(x>y&&y!
=0);
C)if(x>0)x--
elsey++;
D)if(y<0){;}
elsex++;
19.请阅读以下程序:
#include
main()
{intx=1,y=0,a=0,b=0;
switch(x)
{ case1:
switch(y)
{ case0:
a++;break;}
case2:
a++,b++;break;}
printf("a=%d,b=%d\n",a,b);
}
上面程序的输出结果是( )。
A)a=2,b=1
B)a=1,b=1
C)a=1,b=0
D)a=2,b=2
20.以下叙述中正确的是( )。
A)调用printf函数时,必须要有输出项
B)使用putchar函数时,必须在之前包含头文件stdio.h
C)在C语言中,整数可以以十二进制、八进制或十六进制的形式输出
D)调用getchar函数读入字符时,可以从键盘上输入字符所对应的ASCII码
21.有以下语句:
charb[8];intc;,则正确的输入语句是( )。
A)scanf("%s%d",&b,&c);
B)scanf("%s%d",&b,c);
C)scanf("%s%d",b,c);
D)scanf("%s%d",b,&c);
22.有以下程序:
#include
main()
{ inta[]={1,2,3,4},y,*p=&a[3];
--p;y=*p;printf("y=%d\n",y);
}
程序的运行结果是( )。
A)y=0
B)y=1
C)y=2
D)y=3
23.若有以下说明和语句,请选出哪个是对c数组元素的正确引用( )。
intc[4][5],(*cp)[5];
cp=c;
A)cp+1
B)*(cp+3)
C)*(cp+1)+3
D)*(*cp+2)
24.有以下程序:
#include
main(){charp[20]={'a','b','c','d'},q[]="abc",r[]="abcde";
strcat(p,r);strcpy(p+strlen(q),q);
printf("%d\n",strlen(p));
}
程序运行后的输出结果是( )。
A)9
B)6
C)11
D)7
25.以下程序段中的变量已正确定义:
for(i=0;i<4;i++,i++) for(k=l;k<3;k++);printf("*");
程序段的输出结果是( )。
A)********
B)****
C)**
D)*
26.以下程序运行后的输出结果是( )。
main(){charch[]="uvwxyz",*pc;
pc=ch;
printf("%c\n",*(pc+5));
}
A)z
B)0
C)元素ch[5]地址
D)字符y的地址
27.有以下程序:
#include
voidfun(char**p){++p;
printf("%s\n",*p);
}
main(){char*a[]={"Morning","Afternoon","Evening","Night"};
fun(a);
}
运行后的输出结果是( )。
A)Afternoon
B)fternoon
C)Morning
D)orning
28.以下程序运行后的输出结果是( )。
voidf(intn,int*r){intr1=0;
if(n%3==0)r1=n/3;
elseif(n%5==0)r1=n/5;
elsef(--n,&r1);
*r=r1;
}
main(){intm=7,r;
f(m,&r);
printf("%d\n",r);
}
A)2
B)1
C)3
D)0
29.有以下程序:
main()
{
inta[3][2]={0},(*ptr)[2],i,j;
for(i=0;i<2;i++)
{ptr=a+i;scanf("%d",ptr);ptr++;}
for(i=0;i<3;i++)
{for(j=0;j<2;j++)printf("%2d",a[i][j]);
printf("\n");
}
}
若运行时输入:
123<回车>,则输出结果是( )。
A)编译错误
20
00
B)10
20
00
C)12
20
30
D)10
30.有以下程序:
#include
voidfun(char*s){while(*s){if(*s%2==0)printf("%c",*s);
s++;
}
}
main(){chara[]={"good"};
fun(a);printf("\n");
}
注意:
字母a的ASCII码值为97,程序运行后的输出结果是( )。
A)d
B)go
C)god
D)good
31.有以下程序:
main()
{inti,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)45
B)20
C)25
D)36
32.当用"#defineF37.5f"定义后,下列叙述正确的是( )。
A)F是float型数
B)F是char型数
C)F无类型
D)F是字符串
33.有以下程序(函数fun只对下标为偶数的元素进行操作)
#include
voidfun(int*a,intn){inti,j,k,t;
for(i=0;i for(j=i;j t=a[i];a[i]=a[k];a[k]=t; } } main(){intaa[10]={1,2,3,4,5,6,7},i; fun(aa,7); for(i=0;i<7;i++)printf("%d,",aa[i]); printf("\n"); } 程序运行后的输出结果是( )。 A)7,2,5,4,3,6,1, B)1,6,3,4,5,2,7, C)7,6,5,4,3,2,1, D)1,7,3,5,6,2,1, 34.阅读下列程序,则运行结果为( )。 #include"stdio.h" fun() { staticintx=3; x++; returnx;} main() { inti,x; for(i=0;i<3;i++) x=fun(); printf("%d\n",x);} A)3 B)4 C)5 D)6 35.下列程序的输出结果是( )。 #include"stdio.h" #defineN3 #defineM3 voidfun(inta[M][N]) { printf("%d\n",*(a[1]+2));} main() { inta[M][N]; inti,j; for(i=0;i for(j=0;j a[i][j]=i+j-(i-j); fun(a);} A)3 B)4 C)5 D)6 36.有以下程序段: typedefstructNODE {intnum;structNODE*next; }OLD; 以下叙述中正确的是( )。 A)以上的说明形式非法 B)NODE是一个结构体类型 C)OLD是一个结构体类型 D)OLD是一个结构体变量 37.有以下程序: structS{intn;inta[20];}; voidf(int*a,intn){inti; for(i=0;i } main(){inti;structSs={10,{2,3,1,6,8,7,5,4,10,9}}; f(s.a,s.n); for(i=0;i } 程序运行后的输出结果是( )。 A)2,4,3,9,12,12,11,11,18,9, B)3,4,2,7,9,8,6,5,11,10, C)2,3,1,6,8,7,5,4,10,9, D)1,2,3,6,8,7,5,4,10,9, 38.下列选项中,能够满足"若字符串s1等于字符串s2,则执行ST"要求的是( )。 A)if(strcmp(s2,s1)==0)ST; B)if(sl==s2)ST; C)if(strcpy(s1,s2)==1)ST; D)if(sl-s2==0)ST; 39.有以下程序: structSTU {charname[10];intnum;floatTotalScore;}; voidf(structSTU*p){structSTUs[2]={{"SunDan",20044,550},{"Penghua",20045,537}},*q=s; ++p;++q;*p=*q; } main(){structSTUs[3]={{"YangSan",20041,703},{"LiSiGuo",20042,580}}; f(s); printf("%s%d%3.0f\n",s[1].name,s[1].num,s[1].TotalScore); } 程序运行后的输出结果是( )。 A)SunDan20044550 B)Penghua20045537 C)LiSiGuo20042580 D)SunDan20041703 40.下面程序段的输出为( )。 #include"stdio.h" main() { printf("%d\n",12<<2);} A)0 B)47 C)48 D)24 1、参考答案: B 【解析】在实际应用中,队列的顺序存储结构一般采用循环队列的形式。 2、参考答案: C 【解析】一般来说,在线性表的链式存储结构中,各数据结点的存储序号是不连续的,并且各结点在存储空间中的位置关系与逻辑关系也不一致。 线性链表中数据的插入和删除都不需要移动表中的元素,只需改变结点的指针域即可。 3、参考答案: A 【解析】根据二叉树的性质3: 在任意一棵二叉树中,度为0的叶子结点总是比度为2的结点多一个,所以本题中度为2的结点是5-1=4个,所以度为1的结点的个数是25-5-4=16个。 4、参考答案: B 【解析】数据库系统的三级模式是概念模式、外模式和内模式。 概念模式是数据库系统中全局数据逻辑结构的描述,是全体用户公共数据视图。 外模式也称子模式或用户模式,它是用户的数据视图,给出了每个用户的局部数据描述。 内模式又称物理模式,它给出了数据库物理存储结构与物理存取方法,所以选择B)。 5、参考答案: A 【解析】实体完整性约束要求关系的主键中属性值不能为空值,所以选择A)。 6、参考答案: C 【解析】如果S=T/R,则S称为T除以R的商。 在除运算中S的域由T中那些不出现在R中的域所组成,对于S中的任一有序组,由它与关系R中每个有序组所构成的有序组均出现在关系T中。 所以本题选择C)。 7、参考答案: A 【解析】软件危机主要表现在: 软件需求的增长得不到满足;软件开发成本和进度无法控制;软件质量难以保证;软件不可维护或维护程度非常低;软件的成本不断提高;软件开发生产率的提高赶不上硬件的发展和应用需求的增长。 所以选择A)。 8、参考答案: D 【解析】需求分析阶段的工作有: 需求获取;需求分析;编写需求规格说明书;需求评审,所以选择D)。 9、参考答案: B 【解析】黑盒测试是对软件已经实现的功能是否满足需求进行测试和验证,黑盒测试完全不考虑程序内部的逻辑结构和内部特性,只根据程序的需求和功能规格说明,检查程序的功能是否符合它的功能说明,所以本题选择B)。 10、参考答案: C 【解析】系统结构图是对软件系统结构的总体设计的图形显示。 在需求分析阶段,已经从系统开发的角度出发,把系统按功能逐次分割成层次结构,是在概要设计阶段用到的。 PAD图是在详细设计阶段用到的。 程序流程图是对程序流程的图形表示,在详细设计过程中用到。 数据流图是结构化分析方法中使用的工具,它以图形的方式描绘数据在系统中流动和处理的过程,由于它只反映系统必须完成的逻辑功能,所以它是一种功能模型,是在可行性研究阶段用到的而非软件设计时用到,所以选择C)。 11、参考答案: B 【解析】C语言规定用户标识符由字母、数字和下划线组成,且第一个字符必须是字母或下划线,可见选项C),D)是错误的;此外,C语言不允许用户将关键字作为标识符,而选项A)中的void正是C语言的关键字。 12、参考答案: D 【解析】C语言的可执行程序是由一系列机器指令组成的,用C语言编写的源程序必须经过编译生成二进制目标代码,再经过连接才能运行,并且可以脱离C语言集成开发环境。 故答案为D)。 13、参考答案: C 【解析】C语言规定每个语句以;(分号)结束,因此选项C)为两条语句。 14、参考答案: A 【解析】本题考查的是C语言表达式。 如果算术运算符"/"中参与运算的变量都是整型变量,则"/"表 示整除运算,所以"1/3"的值应为0,故选项A)的表达式值为0,而事实上代数式的值并不为0,所以选项A)不能正确计算题目所要求的代数式。 15、参考答案: D 【解析】"&"是求址运算符,"*"是指变量说明符。 选项A)、B)应改为scanf("%d",p);选项C)中指针变量p未指向一确定的内存单元,不能为其赋值,并且这样做很危险,建议不使用。 16、参考答案: B 【解析】本题的考查点是不同格式的数据输出。 printf函数对不同类型的数据用不同的格式字符,"%d"是以带符号的十进制形式输出整数(正数不输出符号);"%o"以八进制无符号形式输出整数(不包括前导符0);"%x"以十六进制无符号形式输出整数(不包括前导符0x)。 17、参考答案: C 【解析】本题考查的是逗号表达式。 逗号表达式的求解步骤是先求解表达式1,然后依次求解表达式2,直到表达式N的值。 整个逗号表达式的值就是最后一个表达式N的值。 表达式(x=3*y,x+6)中,x=15。 表达式y=x-1=14。 18、参考答案: C 【解析】本题考查的是if语句。 if是C语言关键字,表达式两侧的圆括号不可少,最后是一条语句或是用花括号括起来的一组语句。 选项A)和B)是在表达式后跟了一条空语句,选项D)是在表达式后跟了一组空语句,选项C)中x--是表达式而不是语句,所以在编译时会出现错误信息,在x--后面加上";"号就对了。 19、参考答案: A 【解析】考查switch语句的使用。 switch语句的执行过程为: 进入switch结构后,对条件表达式进行运算,然后从上至下去找与条件表达式值相匹配的case,以此作为入口,执行switch结构中后面的各语句,直到遇到break语句,则跳出switch语句,如果各case都不匹配时,则执行default后面的语句。 20、参考答案: B 【解析】本题考查的是标准输入输出函数。 在使用标准输入输出库函数(除了printf和scanf)前,必须要用预编译命令"#include"将头文件"stdio.h"包括到用户源文件中。 调用printf函数时可以没有输出项,比如printf("")是允许的。 C语言中整数的输出形式中没有十二进制的形式。 getchar函数读入字符时可以得到第一个输入字符的ASCII码,无法通过输入相应字符的ASCII得到该字符。 21、参考答案: D 【解析】scanf函数常用的格式控制中"s"代表输入的是字符串,"d"代表输入带符号的十进制整型数,根据语句charb[8];intc;可确定正确的输入语句是D)选项 22、参考答案: D 【解析】在程序中指针变量p初始指向a[3],执行p减1后,p指向a[2],语句y=*p的作用是把a[2]的值赋给变量y,所以输出为y=3。 23、参考答案: D 【解析】本题的考查点是数组元素的引用。 cp=c这个语句是将数组c的首行元素地址赋给了指针数组cp。 选项A),cp+1是指将数组c的首行地址加1,即为第二行地址;选项B),*(cp+3)是地址,等于数组c的首地址加3的那个内存单元的内容,不是对数组元素的引用;选项C),*(cp+1)+3是地址,等于数组c的首地址加1的那个内存单元中存放的值加3,不是对数组元素的引用。 24、参考答案: B 【解析】本题考查的是用于字符串处理的函数。 题目中首先通过strcat(p,r)将r所指字符串的内容连接到p所指的字符串后面,p[20]={a,b,c,d,a,b,c,d,e}。 然后通过p+strlen(q)在数组元素p[0]地址的基础上向后移动三位,然后将q所指字符串的内容复制到p所指的存储空间中,从字符"d"往后全部覆盖,p[20]={a,b,c,a,b,c}。 在输出语句中strlen(p)是求字符串的长度,值为6。 25、参考答案: D 【解析】本题考察for循环语句,注意第二个for语句的后面有一个分号,即printf函数不属于循环体,无论循环执行多少次,printf("*")语句只执行一次。 因此,本题正确答案为D)。 26、参考答案: A 【解析】表达式*(pc+5)先将指针向后移动5个存储单元,指向ch[5],再取出其中的值。 其值为字符z。 27、参考答案: A 【解析】语句voidfun(char**p)中的形参是一个指向指针的指针,在调用函数fun(a)后,指针数组a加1,则指向了数组的第2个字符串"Afternoon"的A的地址。 28、参考答案: A 【解析】参数r的传递是址传递,函数调用会改变其值。 函数f的功能是: 判断n是否为3或5的倍数,如果是,则将指针r所指的内存空间赋值为n除以3或5的商;否则n递减,直到它可以被3或5整除。 初始时调用函数f(7,&r);n=7,执行else子句,调用f(6,&r1);后n=6,执行语句if(n%3==0)r1=n/3;,此后执行语句*r=r1;。 所以r=6/3=2。 29、参考答案: B 【解析】首先二维数组a中的元素都初始化为0,其次定义了指向数组的指针ptr,并且依次将ptr指向二维数组a中的各行,循环语句for(i=0;i<2;i++)等价于: scanf("%d",a+0);scanf("%d",a+1);其中a+i即是数组a[i]的首地址,也是元素a[i][0]的地址,故以上语句读入两个整数,分别存入二维数组a第1列中,在输入123后,a={{1,0},{2,0},{0,0}}。 30、参考答案: A 【解析】fun函数的功能是输出字符串中ASCII码能被2整除的字符,g的ASCII码为103,o的ASCII码为111,d
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机系统 二级 无纸化 选择题 题库