(1)根据数据结构中各数据元素之间前后件关系的复杂程度,一般将数据结构分成 A)动态结构和静态结构 B)紧凑结构和非紧凑结构 C)线性结构和非线性结构 D)内部结构和外部结构 (2)设一棵二叉树中有3个叶子结点,有8个度为1的结点,则该二叉树中总的结点数为 A)12 B)13 C)14 D)15 (3)在下列几种排序方法中,要求内存量最大的是 A)插入排序 B)选择排序 C)快速排序 D)归并排序 (4)下列叙述中,不属于结构化程序设计方法的主要原则的是 A)自顶向下 B)由底向上 C)模块化 D)限制使用goto语句 (5)下列不属于软件调试技术的是 A)强行排错法 B)集成测试法 C)回溯法 D)原因排除法 (6)为了避免流程图在描述程序逻辑时的灵活性,提出了用方框图来代替传统的程序流程图,通常也把这种图称为 A)PAD图 B)N-S图 C)结构图 D)数据流图 (7)软件复杂性度量的参数包括 A)效率 B)规模 C)完整性 D)容错性 (8)下列叙述中,不属于数据库系统的是 A)数据库 B)数据库管理系统 C)数据库管理员 D)数据库应用系统 (9)数据库系统的核心是 A)数据库 B)数据库管理系统 C)数据模型 D)软件工具 (10)视图设计一般有3种设计次序,下列不属于视图设计的是 A)自顶向下 B)由外向内 C)由内向外 D)自底向上 (11)下列常数中不能作为C语言常量的是 A)0xabc B)2.5e-0.2 C)32 D)0747 (12)设int型的数据长度为2个字节,则unsigned int 类型数据的取值范围是 A)-127~128 B)0~255 C)0~65535 D)0~32768 (13)已知int t=6,s;则执行语句s=(++t)+(t++);后,s的值是 A)12 B)13 C)14 D)15 (14)已知int x=6,y=2,z;则执行表达式z=x=x>y后,变量z的值为 A)0 B)1 C)4 D)5 (15)已知int i,a;执行语句i=(a=3,a++,--a,a+4,a+5,++a);后,变量i的值为 A)2 B)3 C)4 D)5 (16)下列说法中正确的是 A)一个C程序是从命令行开始执行的 B)C程序中有些执行语句不用分号(;)结束 C)分号不是C语句的一部分,是C语句之间的分隔符 D)命令行必须用“#”开头,最后不能加“;”号,命令行不是C程序中的语句 (17)已知int x=2;执行语句x*=x+=++x;后,x的值是 A)16 B)26 C)36 D)46 (18)已知int a=20,b=5;则执行以下语句后的输出结果是 printf("%d\n",a%=(b%=2)); A)0 B)1 C)2 D)3 (19)现有以下程序段 #include main() { int a,b,c; scanf("a=%*d%d,b=%d%*d,c=%d",&a,&b,&c); printf("a=%d,b=%d,c=%d\n",a,b,c); } 若输出的结果为a=20,b=30,c=40,则以下能够正确输入数据的是 A)a=10]20,b=20]30,c=40 B)20,30,40 C)a=20,b=30,c=40 D)a=10]20,b=30]20,c=40 [注]: “]”表示空格,表示回车 (20)已知int x=5,y=3;则表达式(x||y)&&78的结果为 A)1 B)0 C)5 D)78 (21)有如下程序段 #include "stdio.h" main() {int a=10,b=50,c=30; a=a>30?1:2; b=b>30?1:2; c=c>30?1:2; printf("%d,%d,%d\n",a,b,c);} 则执行结果为 A)2,1,2 B)1,2,1 C)1,1,2 D)2,1,1 (22)阅读如下程序段 #include "stdio.h" main() { int a=45,b=40,c=50,d; d=a>30?b:c; switch(d) { case 30 : printf("%d,",a); case 40 : printf("%d,",b); case 50 : printf("%d,",c); default : printf("#");}} 则输出的结果是 A)40,50, B)50,# C)40,# D)40,50,# (23)若有定义int k=10;则下列程序的输出结果为 do{ printf("%d",k--); } while(!k); A)9 B)10 C)10987654321 D)没有输出 (24)阅读下列程序段,则程序的输出结果是 #include "stdio.h" main() { int a=10,b=10,k; for(k=0;a>8;b=++k) printf("%d,%d,",a--,--b); printf("\n");} A)10,10,10,0, B)10,9,9,0, C)10,10,9,1, D)9,9,9,1, (25)下列程序的运行结果是 #include "stdio.h" main() {int a,b,m; for(a=5;a>=1;a--) { m=0; for(b=a;b<=5;b++) m=m+a*b;} printf("%d\n",m);} A)30 B)15 C)20 D)10 (26)有字符串如下,"\n\\\407as1\"\xabc",则字符串的长度为 A)6 B)7 C)8 D)9 (27)阅读下面程序段 #include "stdio.h" main() { char c; c=(′z′-′a′)/2+′A′; putchar(c);} 输出结果为 A)M B)N C)O D)Q (28)下列说法中不正确的是 A)C语言规定,不能在一个函数的内部再定义函数 B)在没有声明函数返回值类型的情况下,C默认的函数返回值类型为int型 C)函数的类型可以是整型、实型、字符型,但不能是指针型 D)函数可以没有形参,但函数名后的一对圆括号不能省略 (29)现有如下程序,则程序的输出结果为 #include "stdio.h" int f(int a,int b) {int c; if(a>0&&a<10)c=(a+b)/2; else c=a*b/2; return c;} main() { int a=8,b=20,c; c=f(a,b); printf("%d\n",c);} A)随机数 B)80 C)28 D)14 (30)阅读如下程序段,则程序段的执行后的输出结果为 #include "stdio.h" main() { char c; int i; char count(); int p(char); for(i=0;i<30;i++)c=count(); p(c);} char count() { char str=′A′; str+=1; return(str);} p(char c) {putchar(c); putchar(′\n′);} A)A B)B C)a D)b (31)阅读如下程序段,则执行后的结果为 #include "stdio.h" main() {int a,*p,*q,**w; p=&a; q=&a; w=&p; *p=5%6; *q=5; **w=3; printf("%d\n",a);} A)无确定值 B)1 C)5 D)3 (32)现有定义int a=10,*p=&a;则不能使a的内容增1的语句是 A)*p++; B)*p=*p+1; C)++*p; D)*p+=1; (33)现有下列程序段 #include "stdio.h" void JFT(int *a,int *b,int *c,int *d,int *e) {int i,j,k,m; for(i=0;i<*a;i++) for(j=0;j<*b;j++) for(k=0;k<*c;k++) for(m=0;m<*d;m++)*e++;} main() {int a=10,b=10,c=10,d=10,e=0; JFT(&a,&b,&c,&d,&e); printf("%d\n",e);} 则程序段的输出结果是 A)10000 B)1000 C)10001 D)0 (34)已知:int c[5][6];则对数组元素引用不正确的是 A)c[0+2][2*1] B)c[1][3] C)c[4-2][0] D)c[5][2] (35)以下能对二维数组c进行正确的初始化的语句是 A)int c[3][]={{3},{3},{4}}; B)int c[][3]={{3},{3},{4}}; C)int c[3][2]={{3},{3},{4},{5}}; D)int c[][3]={{3},{},{3}}; (36)阅读下列程序段,则程序段实现的功能是 #include "stdio.h" main() { int k[10]; int j; for(j=0;j<10;j++) scanf("%d",&k[j]); for(j=9;j>=0;j--) printf("%d,",k[j]);} A)输入10个数据的顺序输入并输出 B)输入10个数据的逆序存放 C)输入10个数据的逆序输出 D)以上叙述均错误 (37)阅读程序,则执行后的结果为 #include "stdio.h" main() {int i,m,n; for(i=0;i<3;i++) {m=test1(); n=test2();} printf("%d,%d\n",m,n);} test1() { int x=0; x++; return x;} test2() {static int x=0; x++; return x;} A)1,1 B)1,3 C)3,1 D)3,3 (38)以下关于宏替换叙述中,错误的是 A)宏替换占用编译时间 B)替换文本中可以包含已定义过的宏名 C)宏名可以由+号组成 D)宏替换只能是字符替换首页 1 2 尾页
相关资料
|