[计算机类试卷]国家二级(C语言)笔试模拟试卷209及答案与解析.doc
《[计算机类试卷]国家二级(C语言)笔试模拟试卷209及答案与解析.doc》由会员分享,可在线阅读,更多相关《[计算机类试卷]国家二级(C语言)笔试模拟试卷209及答案与解析.doc(28页珍藏版)》请在麦多课文档分享上搜索。
1、国家二级( C语言)笔试模拟试卷 209及答案与解析 1 按照 “先进后出 ”原则组织数据的结构是 ( )。 ( A)队列 ( B)栈 ( C)双向链表 ( D)二叉树 2 下列选项中不属于软件生命周期开发阶段任务的是 ( )。 ( A)软件测试 ( B)概要设计 ( C)软件维护 ( D)详细设计 3 设在 C语言中, float类型数据占 4个字节,则 double类型数据占 ( )个字节。 ( A) 1 ( B) 2 ( C) 8 ( D) 4 4 如果进栈序列为 e1、 e2、 e3、 e4,则可能的出 栈序列是 ( )。 ( A) e3、 e1、 e4、 e2 ( B) e2、 e4
2、、 e3、 e1 ( C) e3、 e4、 e2 ( D)任意顺序 5 数据库管理系统 DBMS中用来定义模式、内模式和外模式的语言为 ( )。 ( A) C ( B) Basic ( C) DDL ( D) DML 6 以三级模式为框架形成的 3种数据库中,真实存在于计算机外存的数据库是( )。 ( A)概念数据库 ( B)用户数据库 ( C)物理数据库 ( D)逻辑数据库 7 一些重要的程序设计语言 (如 C语言和 Pascal语言 )允 许过程的递归调用,而实现递归调用中的存储分配通常用 ( )。 ( A)栈 ( B)堆 ( C)数组 ( D)链表 8 下列叙述中正确的是 ( )。 (
3、A)软件测试应该由程序开发者来完成 ( B)程序经调试后一般不需要测试 ( C)软件维护只包括对程序代码的维护 ( D)以上三种说法都不对 9 有下列程序: main() int y=10; doy-; while(-y); printf(“ d n“, -y); 当 执行程序时,输出的结果是 ( )。 ( A) -1 ( B) 1 ( C) 4 ( D) 0 10 表达式 5-1的值是 ( )。 ( A)整数 4 ( B)字符 4 ( C)表达式不合法 ( D)字符 6 11 设 j为 int型变量,则下面 for循环语句的执行结果是 ( )。 for(j=10; j 3; j-) if(j
4、 3)j-; -j; -j; printf(“ d“, j); ( A) 6 3 ( B) 7 4 ( C) 6 2 ( D) 7 3 12 表示关系 X =Y =Z的 C语言表达式为 ( )。 ( A) (X =Y)&(Y =Z) ( B) (X =Y)AND(Y =Z) ( C) (X =Y =Z) ( D) (X =Y)&(Y =Z) 13 设有如下定义: int arr=6, 7, 8, 9, 10; int*ptr; ptr=arr; *(ptr2)=2; printf(“ d, d n“, *ptr, *(ptr2); 则下列程序段的输出结果为 ( )。 ( A) 8, 10 (
5、B) 6, 8 ( C) 7, 9 ( D) 6, 2 14 设有定义语句: int x6=2, 4, 6, 8, 5, 7), *p=x, i; 要求依次输出 x数组 6个元素中的值,不能完成此操作的语句是 ( )。 ( A) for(i=0; i 6; i+) printf(“ 2d“, *(p+); ( B) for(i=0: i 6; i+) printf(“ 2d“, *(p+i); ( C) for(i=0; i 6; i+) printf(“ 2d“, *p+); ( D) for(i=0; i 6; i+) printf(“ 2d“, *(p)+); 15 数字字符 0的 AS
6、CII值为 48,运行以下程序的输出结果是 ( )。 main() char a=1, b=2; printf(“ c, “, b+); printf(“ d n“, b-a); ( A) 3, 2 ( B) 50, 2 ( C) 2, 2 ( D) 2, 50 16 设有如下定义: int(*ptr)(): 则以下叙述中正确的是 ( )。 ( A) ptr是指向一维组数的指针 变量 ( B) ptr是指向 int型数据的指针变量 ( C) ptr是指向函数的指针,该函数返回一个 int型数据 ( D) ptr是一个函数名,该函数的返回值是指 int型数据的指针 17 设有定义的语句: “ch
7、ar c1=92, c2=92; ”,则以下表达式中的值为零的是( )。 ( A) c1 c2 ( B) c1&c2 ( C) c2 ( D) c1 c2 18 以下程序的输出结果是 ( )。 void fun(int*a, int i, int j) int t; if(i j) t=ai; ai=aj; aj=t; i+; j-; fun(a, i, j); main() int x=2, 6, 1, 8), i; fun(x, 0, 3); for(i=0; i 4; i+) printf(“ 2d“, xi); printf(“n“); ( A) 1, 2, 6, 8 ( B) 8,
8、6, 2, 1 ( C) 8, 1, 6, 2 ( D) 8, 6, 1, 2 19 有以下程序: main() int i, j; for(j=10; j 11; j+) for(i=9; i j; i+) if(!(j i) break; if(i=j-1) printf(“ d“, j); 输出结果是 ( )。 ( A) 11 ( B) 10 ( C) 9 ( D) 10 11 20 有以下程序: #include main() char c1, c2, c3, c4, c5, c6; scanf(“ c c c c“, &c1, &c2, &c3, &c4); c5=getchar()
9、; c6=getchar(); putchar(c1); putchar(c2); printf(“ c c n“, c5, c6); 程序运行后,若从键盘输入 (从第 1列开始 ) 123 45678 则输出结果是 ( )。 ( A) 1267 ( B) 1256 ( C) 1278 ( D) 1245 21 下列选项中非法的字符常量是 ( )。 ( A) t ( B) 039 ( C) , ( D) n 22 以下程序的输出结果是 ( )。 main() char ch34=“123“, “456“, “78“, *p3; int i; for(i=0; i 3; i+)pi=chi; f
10、or(i=0; i 3; i+)printf(“ s“, pi); ( A) 123456780 ( B) 123 456 780 ( C) 12345678 ( D) 147 23 以下程序的输出结果是 ( )。 main() char w10=“ABCD“, “EFGH“, “IJKL“, “MNOP“), K; for(k=1; k 3; k+)printf(“ s n“, wk); ( A) ABCD FGH KL ( B) ABCD EFG IJ ( C) EFG JK O ( D) EFGH IJKL 24 以下程序的输出结果是 ( )。 union myun struct int
11、 x, y, z; )u; int k; a; main() a u x=4; a u y=5; a u z=6; a k=0: printf( d n“, a u x); ( A) 4 ( B) 5 ( C) 6 ( D) 0 25 若有以下定义和语句: “double r=9, *p=&r; *p=r; ”,则以下正确的叙述是( )。 ( A)两个 *p含义相同,都说明给指针变量 p赋值 ( B)在 “double r=99, *p=&r; ”中,把 r的地址赋值给了 p所指的存储单元 ( C)语句 “*p=r; ”把变量 r的值赋给指针变量 p ( D)语句 “*p=r; ”取变量 r的
12、值放回 r中 26 以下程序的输出结果是 ( )。 main() int x=0 5; char z=a; printf(“ d n“, (x&1)&(z z); ( A) 0 ( B) 1 ( C) 2 ( D) 3 27 若二维数组 a有 m列,则在 aij前的元素个数为 ( )。 ( A) i*m+j-1 ( B) i*m+j ( C) j*m+i ( D) i*m+j+1 28 下列程序的输出结果是 ( )。 #include int fun(int a) int b=0; static int c=4; a=c+ b+; return(a); main() int a=2, i, c
13、; for(i=0; i 2; i+) c=f(a+1); printf(“ d n“, c); ( A) 4 ( B) 7 ( C) 6 ( D) 5 29 定义结构体数组: struct stu int num; char name20; X5=1, “LI“ 2, “ZHAO“, 3, “WANG“, 4, “ZHANG“, 5, “LIU“); for(i=1; i 5; i+) printf(“ d c“, xi num, xi name2); 以上程序段的输出结果为 ( )。 ( A) 2A3N4A5U ( B) 1I2A3H4I ( C) 1A2N3A4U ( D) 2H3A4H
14、5I 30 设 int x=7,则 x的值是 ( )。 ( A) -8 ( B) 7 ( C) -1 ( D) 1 31 有以下程序: void fun(char*a, char*b) a=b; (*a)+; main() char c1=A, c2=a, *p1, *p2; p1=&c1; p2=*c2; fun(p1, p2); printf(“ c c n“, c1, c2); 程序运行后的输出结果是 ( )。 ( A) Ab ( B) aa ( C) Aa ( D) Bb 32 有以下程序: int fun(int n) if(n=1)return 1; else return(n+f
15、un(n-1); main() int X; scanf(“ d“, &x); x=fun(x); printf(“ d n“, x); 执行程序时,给变量 x输入 10,程序的输出结果是 ( )。 ( A) 55 ( B) 54 ( C) 65 ( D) 45 33 有以下程序: void f(int x, int y) int t; if(x y)t=x; x=y; y=t; main() int a=4, b=3, c=5; f(a, b); f(a, c); f(b, c); printf(“ d, d, d n“, a, b, c); 执行后输出结果是 ( )。 ( A) 3, 4,
16、 5 ( B) 5, 3, 4 ( C) 5, 4, 3 ( D) 4, 3, 5 34 以下程序的输出结果是 ( )。 main() char*s=“12134211“; int v4=0, 0, 0, 0, k, i; for(k=0; sk; k+) switch(sk) case1: i=0; case2: i=1; case3: i=2; case4: i=3; vi+; for(k=0; k 4; k+)printf(“ d“, vk); ( A) 4 2 1 1 ( B) 0 0 0 8 ( C) 4 6 7 8 ( D) 8 8 8 8 35 有以下程序: main() int
17、 x=102, y=012; printf(“ 2d, 2d n“, x, y); 执行后输出结果是 ( )。 ( A) 10, 01 ( B) 02, 12 ( C) 102, 10 ( D) 02, 10 36 有以下程序: main() int x=0, y=5, z=3; while(z- 0&+x 5)y=y-1; printf(“ d, d, d n“, x, y, z); 程序执行后的输出结果是 ( )。 ( A) 3, 2, 0 ( B) 3, 2, -1 ( C) 4, 3, -1 ( D) 5, -2, -5 37 有以下程序: main() int i, n=0; for
18、(i=2; i 5; i+) do if(i 3) continue; n+: while(!i); n+: printf(“n= d n“, n); 程序执行后输出结果是 ( )。 ( A) n=5 ( B) n=2 ( C) n=3 ( D) n=4 38 下面程序的功能是输出以下形式的金字塔图案: main() int i, j; * for(i=1; i =4; i+) * * * for(j=1; j =4-i; j+)printf(“); * * * * * for(j=1; j =_; j+)printf(“*“); * * * * * * * printf(“ n“); 在下划
19、线处应填入的是 ( )。 ( A) i ( B) 2*i-1 ( C) n=2*i+1 ( D) i+2 39 函数 ftell(fp)的作用是 ( )。 ( A)得到 fp所指向文件的当前读写位置 ( B)初始化流式文件的位置指针 ( C)移动流式文件的位置指针 ( D)以上答案均正确 40 在一个容量为 32的循环队列中,若头指针 front=3,尾指针 rear=2,则该循环队列中共有 _个元素。 41 一棵二叉树第 6层 (根结点为第一层 )的结点最多为 _个。 42 对度为 10的线性表进行冒泡排序,最坏情况下需要比较的次数为 _。 43 数据库管理系统常见的数据模型有层次模型、网状
20、模型和 _3种。 44 在面向对象的程序设计中,类描述的是具有相似性质的一组 _。 45 下列程序的输出结果是 _。 main() int i=0, a=0; while(i 20) for(; ) if(i 10)=0)break; else i-; i+=ll: a+=i: printf(“ d n“, a): 46 下列程序的运行结果是 _。 #include long func(int x) long p; if(x=0x=1) return(1); p=x*func(x-1); return(p); main() printf(“ d n“, func(4); 47 设有下列程序:
21、#include #include main() int i; char s10, t10; gets(t); for(i=0; i 2; i+) gets(s); if(strcmp(t, s) 0) strcpy(t, s): printf(“ s n“, t); 程序运行后,从键盘上输入 (代表回车符 ):DEFBADEFMQTHKG则程序运行后的结果是 _。 48 数据库保护分为安全性控制、 _、并发性控制和数据的恢复。 49 下列程序的输出结果是 _。 #include main() char b30, *chp; strcpy(&b0, “CH“); strcpy(&b1, “DE
22、F“); strcpy(&b2, “ABC“); printf(“ s n“, b); 50 有以下程序,若运时从键盘输入: 18, 11,则程序的输出结果是_。 main() int a, b; printf(“Enter a, b: “); scanf(“ d, d“, &a, &b); while(a!=b) while(a b)a-=b; while(b a)b-=a; printf(“ 3d 3d n“, a, b); 51 在使用 putchar和 getchar函数处理字符时,必须在程序的开头出现包含头文件命令行是 _。 52 下列程序的运行结果是 _。 #include mai
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
2000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 试卷 国家 二级 语言 笔试 模拟 209 答案 解析 DOC
