[计算机类试卷]国家二级(C语言)笔试模拟试卷66及答案与解析.doc
《[计算机类试卷]国家二级(C语言)笔试模拟试卷66及答案与解析.doc》由会员分享,可在线阅读,更多相关《[计算机类试卷]国家二级(C语言)笔试模拟试卷66及答案与解析.doc(24页珍藏版)》请在麦多课文档分享上搜索。
1、国家二级( C语言)笔试模拟试卷 66及答案与解析 1 设有栈 S和队列 Q,其初始状态为空,元素 a1、 a2、 a3、 a4、 a5、 a6依次入栈,出栈的元素进入队列 Q,若 6个元素出队列的顺序是 a2、 a4、 a3、 a6、 a5、a1,则栈的容量至少是 _。 ( A) 6 ( B) 4 ( C) 3 ( D) 2 2 一个存储结点存放一个 _。 ( A)数据项 ( B)数据元素 ( C)数据结构 ( D)数据类型 3 在数据结构中,从逻辑结构上看可以分成 _。 ( A)动态结构和静态结构 ( B)线 性结构和非线性结构 ( C)内部结构和外部结构 ( D)紧凑结构和非紧凑结构 4
2、 若待排序序列中元素非常多,而且它们的排列是完全无序的,那么最好选用下列排序方法中的 _。 ( A)冒泡排序 ( B)简单选择排序 ( C)直接插入排序 ( D)快速排序 5 软件文档不仅是软件开发各阶段的重要依据,而且也影响软件的 _。 ( A)可维护性 ( B)可移植性 ( C)可扩展性 ( D)可用性 6 设有系和学生 2个实体集,一个学生只能在一个系里注册,而一个系有很多学生。系和学生的关系是 _。 ( A)多对多联系 ( B)多对一联系 ( C)一对多联系 ( D)一对一联系 7 下列程序的输出结果是 _。 main() int n; (n=6*4, n+6), n*2; print
3、f(“n=%dn“, n); ( A) 22 ( B) 23 ( C) 24 ( D) 25 8 下列描述中,错误的一条是 _。 ( A) C语言中,二维数组或多维数组的排列顺序是按行存放的 ( B)赋值表达式 b12=a23/2*a00是正确的 ( C)表达式 3=4 2!=5 2的值为 0 ( D)数组名后的方括弧内可以为常量表达式,也可以为变量 9 下列程序 (注意: ch0在低字节, ch1在高字节 )的输出结果是 _。 #include stdio.h union pw int i; char ch2; a; main () a.ch0=13; a.ch1=0; printf(“%d
4、n“, a i); ( A) 13 ( B) 14 ( C) 208 ( D) 209 10 下列程序的输出结果是 _。 #include stdio.h main() int i, j, k, a=3,b=2; i=(-a=b+)?-a; +b; j=a+; k=b; printf(“i=%d, j=%d, k=%dn“,i, j, k); ( A) i=2, j=1, k=3 ( B) i=1, j=1, k=2 ( C) i=4, j=2,k=4 ( D) i=1, j=1, k=3 11 设有如下的变量定义,以下符合 C语言语法的表达式是 _。 int i=8, k,a, b; uns
5、igned long w=5; double x=1, 42, y=5.2; ( A) a+=a-=(b=4)*(a=3); ( B) x%(-3); ( C) a=a*3=2; ( D) y=float(i); 12 设语句 int a=3;,当执行了以下语句后,变量 a的值是 _。 a+=a-=a*a; ( A) 3 ( B) 0 ( C) 9 ( D) -12 13 C语言中运算对象必须是整型的运算符是 _。 ( A) %= ( B) / ( C) = ( D) = 14 若 a为 int类型,且其值为 3,则执行完表达式 a+=a-=a*a后, a的值是_。 ( A) -3 ( B)
6、9 ( C) -12 ( D) 6 15 下列程序的运行结果为 _。 main() int n; for (n=1; n =10; n+) if(n%3=0) continue; printf(“%d“, n); ( A) 12457810 ( B) 369 ( C) 12 ( D) 12345678910 16 用语句 scanf(“%c%c%c“, ,则 x数组的行数为 _。 ( A) 2 ( B) 3 ( C) 4 ( D)无确定值 24 以下能正确进行字符串赋值操作的是 _。 ( A) char *sss;*sss=“hello!“; ( B) char *sss;sss=“hello
7、!“; ( C) char sss8;sss=“hello!“; ( D) char sss8;*sss=“hello!“; 25 若调用一个函数,且此函数中没有 return语句,则以下正确的说法是 _。 ( A)该函数没有返回值 ( B)该函数返回若干个系统默认值 ( C)该函数能返回一个用户所希望的函数值 ( D)该函数返回一个不确定的值 26 若定义 static int a22=1,2,3,4,则 a数组的各数组元素分别为 _。 ( A) a00=1,a01=2,a10=3,a11=4 ( B) a00=1,at01=3,a10=2,a11=4 ( C) a00=4,a01=3,a1
8、0=2,a11=1 ( D) a00=4,a01=2,a10=3,a11=1 27 下列语句中,不正确的是 _。 ( A) static char a=“Jack“; ( B) static char a=“Jack“; ( C) printf(“%s“,a0); ( D) scanf(“%s“,a); 28 给出以下定义: char x=“abcdefg“; char y=a,b,c,d,e,f,g;则正确的叙述为 _。 ( A)数组 x和数组 y等价 ( B)数组 x和数组 y的长度相同 ( C)数组 x的长度大于数组 y的长度 ( D)数组 x的长度小于数组 y的长度 29 已知 p为指
9、针变量, a为数组名, i为整型变量,下列语句中,不正确的是_。 ( A) p= ( B) p=a; ( C) p= ( D) p=10; 30 在 C程序中,可把整型数以二进制形式存放到文件中的函数是 _。 ( A) fprintf 函数 ( B) fread 函数 ( C) fwrite 函数 ( D) fputc 函数 31 以下程序段运行时 _。 char x10,y=“China“; x=y; printf(“%s“,x); ( A)将输出 China ( B)将输出 Ch ( C)将输出 Chi ( D)编译出错 32 下列程序段的输出结果是 _。 void fun(int *x,
10、int *y) printf(“%d %d“,*x,*y);*x=3;*y=4; main() int x=1,y=2; fun( printf(“%d %d“,x,y); ( A) 2 1 4 3 ( B) 1 2 1 2 ( C) 1 2 3 4 ( D) 2 1 1 2 33 以下叙述中不正确的是 _。 ( A) C程序中的预处理命令行都以 #号开始 ( B)宏定义中的宏名可用大写字母或小写字母 ( C)宏替换不占用运行时间,只占用编译时间 ( D)使用带参数的宏时,参数的类型应与宏定义时的一致 34 设有语句: “int a=1,b=2,*p1=”,则使指针 p1指向变量 b的赋值语句
11、是 _。 ( A) p1=*p2 ( B) *p1=p2 ( C) p1=p2 ( D) *p1=*p2 35 以下程序的输出结果是 _。 #include stdio.h main() int k=4,m=1,p; p=func(k,m); printf(“%d,“,p); p=func(k,m); printf(“%dn“,p); func(a,b) int a,b; static int m=0,i=2; i+=m+1;m=i+a+b;return(m); ( A) 8, 17 ( B) 8, 16 ( C) 8, 20 ( D) 8, 8 36 若有以下定义和语句: int a10=1
12、,2,3,4,5,6,7,8,9,10,*p=a;则不能表示 a数组元素的表达式是 _。 ( A) *p ( B) a10 ( C) *a ( D) ap-a 37 以下程序的输出结果是 _。 #define TIMES(X) X*X main() int a=16,k=2,m=1; a/=TIMES (k+m)/TIMES(k+m); printf(“dn“,a); ( A) 16 ( B) 2 ( C) 9 ( D) 1 38 下列程序的输出结果是 _。 main() char a10=1,2,3,4,5,6,7,8,9,0,*p=a+5; printf(“%d“,*-p); ( A)非法
13、 ( B) a4的地址 ( C) 5 ( D) 7 39 以下程序的运行结果为 _。 main() int x,*p,*q; x=10;p=q= printf(“%dn“,*q); ( A) 10 ( B) 9 ( C) 8 ( D) 11 40 下列定义不正确的有 _。 ( A) #define PI 3.141592 ( B) #define S 345; ( C) int max(x, y); int x,y; ( D) int max(int,int); 41 设有结构体类型定义: struct try int one; float two; *str;若要动态开辟一 个结构单元,使指
14、针 str指向其首地址,正确的语句是 _。 ( A) str=(try*)malloc(sizeof(try); ( B) *str=(struct try*)malloc(sizeof(struct try); ( C) str=(strucy try*)malloc(sizeof(struct try); ( D) str=(struc try)malloc(sizeof(struct try); 42 以下对结构体变量 mix中成员 x的正确引用是 _。 struct int t;int x; mix,*p; p= ( A) (*p).mix.x ( B) (*p).x ( C) p-
15、mix.x ( D) p.mix.x 43 设有以下语句: struct stint n;struct st*next; static struct st a3=5, p=则表达式的值是 6的为 _。 ( A) p+- n ( B) p- n+ ( C) (*p).n+ ( D) +p- n 44 以下程序的输出结果是 _。 long fun(int n) long s; if(n=1|n=2) s=2; else s=n-fun(n-1); return s; main() printf(“%1dn“,fun(3); ( A) 1 ( B) 2 ( C) 3 ( D) 4 45 以下对 C语
16、言函数的有关描述中,正确的是 _。 ( A)在 C程序中,调用函数时,只能把实参的值传送给形参,形参的值不能传送给实参 ( B)函数既可以嵌套定义又可以递归调用 ( C)函数必须有返回值,否则不能使用函数 ( D) C程序中有调用关系的所有函数必须放在同一个源程序文件中 46 以下程序的输出结果是 _。 fun(int *s,int p23) *s=p11; main() int a23=1,3,5,7,9,11,*p; p=(int *)malloc(sizeof(int); fun( printf(“%dn“,*p); ( A) 1 ( B) 7 ( C) 9 ( D) 11 47 若有以
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
2000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 试卷 国家 二级 语言 笔试 模拟 66 答案 解析 DOC
