1、计算机二级选择题题库完整 无纸化试题第三套1.下列叙述中正确的是(D)。A) 栈是先进先出的线性表B) 队列是先进后出的线性表C) 循环队列是非线性结构D) 有序线性表既可以采用顺序存储结构,也可以采用链式存储结构2.支持子程序调用的数据结构是(A)。A) 栈B) 树 C) 队列D) 二叉树3.某二叉树有5个度为2的结点,则该二叉树中的叶子结点数是(C)。A) 10B) 8C) 6D) 44.下列排序方法中,最坏情况下比较次数最少的是(D)。A) 冒泡排序B) 简单选择排序C) 直接插入排序D) 堆排序5.软件按功能可以分为:应用软件、系统软件和支撑软件(或工具软件)。下面属于应用软件的是(C
2、)。A) 编译程序 B) 操作系统C) 教务管理系统 D) 汇编程序6.下面叙述中错误的是(A)A) 软件测试的目的是发现错误并改正错误B) 对被调试的程序进行错误定位是程序调试的必要步骤C) 程序调试通常也称为DebugD) 软件测试应严格执行测试计划,排除测试的随意性7.耦合性和聚性是对模块独立性度量的两个标准。下列叙述中正确的是(B)。A) 提高耦合性降低聚性有利于提高模块的独立性B) 降低耦合性提高聚性有利于提高模块的独立性C) 耦合性是指一个模块部各个元素间彼此结合的紧密程度D) 聚性是指模块间互相连接的紧密程度8.数据库应用系统中的核心问题是(A)。A) 数据库设计B) 数据库系统
3、设计C) 数据库维护 D) 数据库管理员培训9.有两个关系R,S如下:由关系R通过运算得到关系S,则所使用的运算为(B)。A) 选择B) 投影C) 插入D) 连接10.将ER图转换为关系模式时,实体和联系都可以表示为(C)。A) 属性B) 键 C) 关系 D) 域11.以下叙述中错误的是(A)。A) 使用三种基本结构构成的程序只能解决简单问题B) 结构化程序由顺序、分支、循环三种基本结构组成C) C语言是一种结构化程序设计语言D) 结构化程序设计提倡模块化的设计方法12.以下四个程序中,完全正确的是(B)。A) #include main();/*/ programming /*/ print
4、f(programming!n);B) #include main()/* programming */ printf(programming!n); C) #include main()/*/* programming */*/ printf(programming!n); D) include main()/* programming */ printf(programming!n); 13.C源程序中不能表示的数制是(D)。A) 十六进制B) 八进制C) 十进制D) 二进制14.以下选项中,能用作用户标识符的是(A)。A) 0B) 88C) voidD) unsigned15.若有定义语
5、句:int x10; ,则表达式xxx的值为(C)。A) 0B) 20C) 10 D) 1016.有以下程序:A#include main() int a1,b0;printf(%d,bab);printf(%dn,a2*b);A) 1,2B) 1,0 C) 3,2 D) 0,017.有以下程序:#include main()int a1,a2; char c1,c2;scanf(%d%c%d%c,&a1,&c1,&a2,&c2);printf(%d,%c,%d,%c,a1,c1,a2,c2);若想通过键盘输入,使得a1的值为12,a2的值为34,c1的值为字符a,c2的值为字符b,程序输出结
6、果是:12,a,34,b 则正确的输入格式是(以下代表空格,代表回车)(D)。 A) 12a34 bB) 12 a 34 bC) 12,a,34,bD) 12a34b18.若变量已正确定义,在if (W) printf(%dn ,k ); 中,以下不可替代W的是(A)。A) abcB) chgetchar()C) abcD) a19.有以下程序段: #include int a, b, c; a10; b50; c30; if (ab) ab, bc; ca; printf(a%d b%d c%dn, a, b, c);程序的输出结果是(B)。A) a10 b50 c30B) a10 b50
7、c10C) a10 b30 c10D) a50 b30 c5020.下列叙述中正确的是(A)。A) 在switch语句中,不一定使用break语句 B) 在switch语句中必须使用defaultC) break语句必须与switch语句中的case配对使用D) break语句只能用于switch语句21.以下不构成无限循环的语句或语句组是(A)。A) n0;do n; while (n0);B) n0;while (1) n;C) n10; while (n); n;D) for(n0,i1; ; i) ni;22.有以下程序:#include main() int c0,k;for (k1
8、;k3;k)switch (k) default: ck;case 2: c;break;case 4: c2;break;printf(%dn,c);程序运行后的输出结果是(C)。A) 7B) 5C) 3D) 923.有以下程序:#include int f( int x,int y) return(yx)*x); main() int a3,b4,c5,d; df(f(a,b),f(a,c); printf(%dn,d);程序运行后的输出结果是(D)。A) 7B) 10C) 8D) 924.若有定义语句:double a, *p&a ; 以下叙述中错误的是(A)。A) 定义语句中的*号是一
9、个间址运算符B) 定义语句中的*号是一个说明符C) 定义语句中的p只能存放double类型变量的地址D) 定义语句中,*p&a把变量a的地址作为初值赋给指针变量p25.若有定义语句:double x, y,*px,*py; 执行了px&x; py&y;之后,正确的输入语句是(A)。A) scanf(%lf %le, px, py);B) scanf(%f %f &x, &y);C) scanf(%f %f, x, y);D) scanf(%lf %lf,x, y);26.以下定义数组的语句中错误的是(B)。A) int num3 1,2,3,4,5,6 ;B) int num24 1,2,3,
10、4,5,6 ;C) int num 1,2,3,4,5,6 ;D) int num41,2,3,4,5,6;27.有以下程序:#include void fun( int a, int b ) int t;ta; ab; bt;main() int c101,2,3,4,5,6,7,8,9,0, i;for (i0; i10; i2) fun(ci, ci1);for (i0;i10; i) printf(%d, ci);printf(n);程序的运行结果是(A)。A) 1,2,3,4,5,6,7,8,9,0,B) 2,1,4,3,6,5,8,7,0,9,C) 0,9,8,7,6,5,4,3,
11、2,1,D) 0,1,2,3,4,5,6,7,8,9,28.有以下程序:#include main() int x320, i; for(i0; i3; i) scanf(%d,xi); printf(%3d%3d%3dn,x00,x01,x10);若运行时输入:2 4 6,则输出结果为(A)。A) 2 0 4 B) 2 0 0C) 2 4 0D) 2 4 629.有以下程序段: #include int j; float y; char name50; scanf(%2d%f%s, &j, &y, name);当执行上述程序段,从键盘上输入55566 7777abc 后,y的值为(A)。A)
12、 566.0 B) 55566.0C) 7777.0D) 566777.030.下列语句组中,正确的是(A)。A) char *s;sOlympic;B) char s7;sOlympic;C) char *s;sOlympic;D) char s7;sOlympic;31.有以下函数:int fun(char *s) char *ts; while(*t); return(ts);该函数的功能是(C)A) 计算s所指字符串的长度B) 比较两个字符串的大小C) 计算s所指字符串占用存字节的个数D) 将s所指字符串复制到字符串t中32.有以下程序(注:字符a的ASCII码值为97) :#incl
13、ude main() char *s abc ;doprintf (%d, *s%10); s; while ( *s );程序运行后的输出结果是(A)。A) 789 B) abcC) 7890 D) 97989933.设有如下函数定义:#include int fun( int k ) if (k1) return 0;else if (k1) return 1;else return fun(k1)1;若执行调用语句:nfun(3);,则函数fun总共被调用的次数是(B)。A) 2B) 3C) 4D) 534.有以下程序:#include int f(int n);main() int a
14、3,s;sf(a);ssf(a); printf(%dn,s);int f(int n) static int a1;na;return n;程序运行后的输出结果是(A)。A) 9B) 8C) 7D) 1035.设有定义:struct complexint real,unreal; data11,8,data2;则以下赋值语句中错误的是(A)。A) data2(2,6);B) data2data1;C) data2.realdata1.real;D) data2.realdata1.unreal;36.有以下程序:# include struct Sint n; int a20; ;void
15、f(struct S *p) int i,j,t; for (i0; in1; i) for (ji1; jn; j) if (pai paj) t pai; pai paj; paj t; main() int i; struct S s10, 2,3,1,6,8,7,5,4,10,9; f(&s); for (i0; is.n; i) printf(%d, s.ai);程序运行后的输出结果是(C)。A) 2,3,1,6,8,7,5,4,10,9,B) 10,9,8,7,6,5,4,3,2,1,C) 1,2,3,4,5,6,7,8,9,10,D) 10,9,8,7,6,1,2,3,4,5,3
16、7.有以下程序:#include #include typedef struct char name9; char sex; int score2; STU;STU f (STU a) STU bZhao, m, 85, 90;int i;strcpy( a.name, b.name );a.sex b.sex;for ( i0; i2; i ) a.scorei b.scorei;return a; main() STU c Qian, f, 95, 92 , d;d f(c);printf (%s,%c,%d,%d, , d.name, d.sex, d.score0, d.score1)
17、;printf (%s,%c,%d,%dn, c.name, c.sex, c.score0, c.score1);程序运行后的输出结果是(A)。A) Zhao,m,85,90, Qian,f,95,92B) Zhao,m,85,90, Zhao,m,85,90C) Qian,f,95,92, Qian,f,95,92D) Qian,f,95,92, Zhao,m,85,9038.以下关于宏的叙述中正确的是(A)。A) 宏替换没有数据类型限制B) 宏定义必须位于源程序中所有语句之前C) 宏名必须用大写字母表示D) 宏调用比函数调用耗费时间39.设有以下语句:int a1, b2, c;ca(b
18、2) ;执行后,c的值为(B)。A) 7B) 9C) 8D) 640.有以下程序:#include main() FILE *fp; int a101,2,3, i, n;fp fopen(d1.dat, w);for (i0; i3; i) fprintf(fp, %d, ai);fprintf(fp, n);fclose(fp);fp fopen(d1.dat, r);fscanf(fp, %d, &n);fclose(fp);printf(%dn, n);程序的运行结果是(D)。A) 321B) 12300 C) 1D) 123选择题题库41.下列数据结构中,属于非线性结构的是(C)。A
19、) 循环队列B) 带链队列C) 二叉树D) 带链栈2.下列数据结构中,能够按照先进后出原则存取数据的是(B)。A) 循环队列B) 栈C) 队列D) 二叉树3.对于循环队列,下列叙述中正确的是(D)。A) 队头指针是固定不变的B) 队头指针一定大于队尾指针C) 队头指针一定小于队尾指针D) 队头指针可以大于队尾指针,也可以小于队尾指针4.算法的空间复杂度是指(A)。A) 算法在执行过程中所需要的计算机存储空间B) 算法所处理的数据量C) 算法程序中的语句或指令条数D) 算法在执行过程中所需要的临时工作单元数5.软件设计中划分模块的一个准则是(B)。A) 低聚低耦合B) 高聚低耦合C) 低聚高耦合
20、 D) 高聚高耦合6.下列选项中不属于结构化程序设计原则的是(A)。A) 可封装B) 自顶向下C) 模块化D) 逐步求精7.软件详细设计生产的图如下:该图是(C)A) NS图B) PAD图C) 程序流程图D) ER图8.数据库管理系统是(B)。A) 操作系统的一部分B) 在操作系统支持下的系统软件C) 一种编译系统D) 一种操作系统9.在ER图中,用来表示实体联系的图形是(C)。A) 椭圆形B) 矩形 C) 菱形D) 三角形10.有三个关系R、S和T如下:则关系T是由关系R和S通过某种操作得到,该操作为(D)。A) 选择B) 投影C) 交 D) 并11.计算机高级语言程序的运行方法有编译执行和
21、解释执行两种,以下叙述中正确的是(A)。A) C语言程序仅可以编译执行B) C语言程序仅可以解释执行C) C语言程序既可以编译执行又可以解释执行D) 以上说法都不对12.以下叙述中错误的是(A)。A) 用户所定义的标识符允许使用关键字B) 用户所定义的标识符应尽量做到见名识意C) 用户所定义的标识符中,大、小写字母代表不同标识D) 用户所定义的标识符必须以字母或下划线开头13.若有说明语句:char c72 ;则变量c(A)。A) 包含1个字符B) 包含2个字符C) 包含3个字符D) 说明不合法,c的值不确定14.现有定义int a;double b;float c;char k;,则表达式a
22、/bck值的类型为(B)。A) intB) doubleC) float D) char15.以下定义语句中正确的是(B)。A) int ab0;B) char A651,bb;C) float a1,*b&a,*c&b;D) double a0.0;b1.116.若在定义语句int a,b,c,*p&c;之后,接着执行以下选项中的语句,则能正确执行的语句是(D)。A) scanf(%d,a,b,c);B) scanf(%d%d%d,a,b,c);C) scanf(%d, &p);D) scanf(%d, p);17.以下程序的运行结果是(B)。int k0;void fun(int m)mk
23、;km;printf(m%d k%d ,m,k);main()int i4;fun(i); printf(i%d k%dn,i,k);A) m4k5i5k5 B) m4k4i5k5C) m4k4i4k5D) m4k5i4k518.在执行下述程序时,若从键盘输入6和8,则结果为(B)。main()int a,b,s;scanf(%d%d,&a,&b);sa ;if(a0) switch(k) default : break;case 1 : nk;case 2 :case 3 : nk;k;printf(%dn,n);程序运行后的输出结果是(D)。A) 0B) 4C) 6D) 720.有以下程序
24、:#include main() int x;scanf(%d,& x);if(x3); elseif(x!10) printf(%dn,x);程序运行时,输入的值在哪个围才会有输出结果(B)。A) 不等于10的整数B) 大于3且不等10的整数C) 大于3或等于10的整数D) 小于3的整数21.有以下程序:#include main() int a1,b0;printf(%d,bab);printf(%dn,a2*b)程序运行后的输出结果是(D)。A) 0,0B) 1,0 C) 3,2 D) 1,222.有以下程序:main() int num441,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,i,j;for(i0;i4;i) for(j0;ji;j)printf(%4c, );for(j;jb?(bc?1:0):0;功能相同的是(A)。A) if(ab)&(bc)k1;else k0;B) if(ab)(bc)k1;else k0;C) if(ab)k0;else if(bb)k1;else if(bc) k1;else k0;24.有以下程序:void ss(char *s,char t)while(*s)if(*st)*st a A ;s; main()char str1100abcddfefdbd
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1