[计算机类试卷]国家二级(C语言)笔试模拟试卷124及答案与解析.doc
《[计算机类试卷]国家二级(C语言)笔试模拟试卷124及答案与解析.doc》由会员分享,可在线阅读,更多相关《[计算机类试卷]国家二级(C语言)笔试模拟试卷124及答案与解析.doc(26页珍藏版)》请在麦多课文档分享上搜索。
1、国家二级( C语言)笔试模拟试卷 124 及答案与解析 1 数据的存储结构是指 _。 ( A)存储在外存中的数据 ( B)数据所占的存储空间量 ( C)数据在计算机中的顺序存储方式 ( D)数据的逻辑结构在计算机中的表示 2 下列数据结构中,能用二分法进行查找的是 _。 ( A)顺序存储的有序线性表 ( B)线性链表 ( C)二叉链表 ( D)有序线性链表 3 下列描述中正确的是 _。 ( A)软件工程只是解决软件项目的管理问题 ( B)软件工程主要解决软件新产品的生产率问题 ( C)软件工程的主要思想是强调在软件开发过程中需要应用工程化原则 ( D)软件工程只是解决软件开发中的技术问题 4
2、下列对于软件测试的描述中正确的是 _。 ( A)软件测试的目的是证明程序是否正确 ( B)软件测试的目的是使程序运行结果正确 ( C)软件测试的目的是尽可能地多发现程序中的错误 ( D)软件测试的目的是使程序符合结构化原则 5 数据库系统的核心是 _。 ( A)数据模型 ( B)数据库管理系统 ( C)数据库 ( D)数据库管理员 6 用树形结构来表示实体之间联系 的模型称为 _。 ( A)关系模型 ( B)网状模型 ( C)层次模型 ( D)以上 3个都是 7 以下叙述中正确的是 _。 ( A) C语言比其他语言高级 ( B) C语言可以不用编译就能被计算机识别执行 ( C) C语言以接近英
3、国国家的自然语言和数学语言作为语言的表达形式 ( D) C语言出现得最晚,具有其他语言的一切优点 8 一个 C程序中 _。 ( A) main函数必须出现在所有函数之前 ( B) main函数可以在任何地方出现 ( C) main函数必须出现在所有函数之后 ( D) main函数必须出现在固定位置 9 下列叙述中正确的是 _。 ( A) C语言编译时不检查语法 ( B) C语言的子程序有过程和函数两种 ( C) C语言的函数可以嵌套定义 ( D) C语言所有函数都是外部函数 10 以下叙述中正确的是 _。 ( A) C程序中注释部分可以出现在程序中任何合适的地方 ( B)花括号 “”和 “”只
4、能作为函数体的定界符 ( C)构成 C程序的基本单位是函数,所有函数名都可以由用户命名 ( D)分号是 C语句之间的分隔符,不是语句的一部分 11 以下程序的输出结果 是 _。 int f() static int i=0; int s=1; s+=i; i+; return s; main() int i, a=0; for(i=0; i 5; i+) a+=f(); printf(“% dn“ , a); ( A) 20 ( B) 24 ( C) 25 ( D) 15 12 设有以下函数: f(int a) int b=0; static int c=3; b+; c+; return(a
5、+b+c); 如果在下面的程序中调用该函数,则输出结果是 _。 main() int a=2, i; for(i=0; i 3; i+)printf(“% dn“, f(a); ( A) 7 8 9 ( B) 7 9 11 ( C) 7 10 13 ( D) 7 7 7 13 以下程序的输出结果是 _。 int a, b; void fun() a=100; b=200; main() int a=5, b=7; fun(); printf(“% d % d n“, a, b); ( A) 100200 ( B) 57 ( C) 200100 ( D) 75 14 设有定义: int a=2,
6、 b=3, c=4; 则以下选项中值为 0的表 达式是 _。 ( A) (! a=1) x=-m+; x=x+8/+n; printf(“% dn“, x); 程序运行后的输出结果是 _。 ( A) 3 ( B) 5 ( C) -1 ( D) -216 16 以下程序的输出结果是 _。 int x=3; main() int i; for(i=1; i x; i+) incre(); incre() static int x=1; x*=x+1; printf(“ % d“, x); ( A) 3 3 ( B) 2 2 ( C) 2 6 ( D) 2 5 17 设有如下程序段: int x=2
7、002, y=2003; printf(“ % dn“, (x, y); 则以下叙述中正确的是 _。 ( A)输出语句中格式说明符的个数少于输出项的个数,不能正确输出 ( B)运行时产生出错信息 ( C)输出值为 2002 ( D)输出值为 2003 18 有以下程序: int a=3; main() int s=0; int a=5; s+=a+ ; s+=a+; printf(“% dn“, s); 程序运行后的输出结果是 _。 ( A) 8 ( B) 10 ( C) 7 ( D) 11 19 设变量 x为 float型且已经赋值,则以下语句中能够将 x中的数值保留到小数点后面两位,并将第
8、三位四舍五入的是 _。 ( A) x=x*100+0.5/100.0 ( B) x=(x*100+0.5)/100.0 ( C) x=(int)(x*100+0.5)/100.0 ( D) x=(x/100+0.5)*100.0 20 有以下程序: main() int m, n, p; scanf(“m=% dn=% dp=% d“, printf(“% d % d % dn“, m, n, p); 若想从键盘上输入数据,使变量 m中的值为 123, n中的值为 456, p中的值为 789,则正确的输入是 _。 ( A) m=123n=456p=789 ( B) m=123 n=456 p
9、=789 ( C) m=123, n=456, p=789 ( D) 123 456 789 21 定义 int*swap()指的是 _。 ( A) 个返回整型值的函数 swap() ( B)一个返回指向整型值指针的函 swap() ( C) 一个指向函数 swap()的指针 ,函数返回一个整型值 ( D)以上说法均错 22 以下程序段的输出结果是 _。 main() char s110,s210,s310; scanf(“%s“,s1);gets(s2);gets (s3); puts(s1);puts(s2)puts(s3) 输入数据如下: (此处 CR代表回车符 ) aaa CR bbb
10、 CR ( A) aaa bbb ( B) aaa bbb ( C) aaa0bbb0 ( D) aaabbb 23 下述函数功能是 _。 int fun(char*x) char*y=x; while(*y+) retumy-x-1; ( A)求字符串的长度 ( B)求字符串存放的位置 ( C)比较两个字符串的大小 ( D)将字符串 x连接到字符串 y后面 24 若 有定义: int a410;,则以下选项中对数组元素 aij引用错误的是 _。 (o =i 4,0 =j =10 ( A) *( 则 _不是对库函数的正确调用。 ( A) strcpy(strl,“HELLO1“); ( B)
11、strcpy(str2,“HELLO2“); ( C) strcpy(str3,“HELLO3“); ( D) strcpy(str4,“HELLO4“); 26 请读程序: #include stdio.h #include string.h main() char*s1=“AbCdEf“,*s2=“aB“; s1+;s2+; printf(“%dn“,strcmp(s1,s2); 上面程序的输出结果是 _。 ( A)正数 ( B)负数 ( C)零 ( D)不确定的值 27 以下程序输出的结果为 _。 main() char*alpha6=“ABCD“,“EFGH“,“IJKL“,“MNOP
12、“,“QRST“,“UVWX“; char*p; int i; p=alpha; for(i=0,i 4;i+) prntf(“%s“,pi); ( A) ABCDEFGHIJKL ( B) ABCD ( C) ABCDEFGHIJKLMNOP ( D) AEIM 28 以下程序的输出结果是 _。 #include stdio.h void prt(int*x,int*y,int*z) printf(“%d,%d,%dn“,+*x,+*y,*(z+); int a=10,b=40,c=20; main() prt( ( A) 11,42,31 12,22,41 ( B) 11,41,20 12
13、,42,20 ( C) 11,21,40 11,21,41 ( D) 11,41,21 12,42,22 29 若一个名部变量的定义形式为 static int x;,那么,其中 static的作用应该是_。 ( A)将变量存储在静态存储区 ( B)使变量 X可 以由系统自动初始化 ( C)使 x只能在本文件内引用 ( D)使 x的值可以永久保留 30 以下程序的输出结果是 _。 #include sulio.h #defme SQR(x)x*x main() int a,k=3; a=+SQR(k+1); printf(“%dn“,a) ; ( A) 8 ( B) 9 ( C) 17 ( D
14、) 20 31 以下程序 (程序左边的数字为附加 的行号 )_。 1#include str.h 2#include stdio.h 3main() 4 chars=“string“; 5puts(s); 6strcpy(s,“hello“); 7printf(“%3Sn“,s); ( A)没有错 ( B)第 1行有错 ( C)第 6行有错 ( D)第 7行有错 32 若有以下结构体定义,则 _是正确的引用或定义。 struct example int x; int y; v1; ( A) example.x=10 ( B) example v2.x=10 ( C) example.x=10
15、( D) struct example v2=10; 33 下列程序的执行结果是 _。 #lnClude stdio.h union un int i; char c2; ; void main() union un x; x.c0=10 x.cl=1; printf(“n%d,x.i); ( A) 266 ( B) 11 ( C) 265 ( D) 138 34 已知形成链表的存储结构如下图所示,则下述类型描述中的空白处应填_。 struct 1ink char data; node; ( A) struct link next ( B) link*next ( C) sluct next
16、link ( D) struct link*next 35 下述程序文件输出的结果是 _。 #inelude stdio.h void main() FILE*fp=fopen(“TEST“,“wb“); fprintf(fp,“%d5.of%c%d“,58,76273.0,-,2278); fclose(fp); ( A) 58 76273-2278 ( B) 5876273.000000-2278 ( C) 5876273-2278 ( D)因文件为二进制文件而不可读 36 已知小写字母 a的 ASCII码为 97,大写字母 A的 ASCII码为 65,以下程序的结果是 _。 main()
17、 unsigned int a=31,b=66; pfintf(“%cn,a|b); ( A) 66 ( B) 98 ( C) b ( D) B 37 C语言库函数 fgets(str,n,fp)功能是 _。 ( A)从中指向的文件中读取长度 n的字符串存入 int指向的内存 ( B)从 fp指向的文件中读取长度不超过 n-1的字符串存入 str指向的内存 ( C)从 fp指向的文件中读到 n个字符串存入 str指向的内存 ( D)从 str读取至多 n个字符到文件 fp 38 下面是对宏定义的描述,不正确的是 _。 ( A)宏不存在类型问题,宏名无类型,它的参数也无类型 ( B)宏替换不占用
18、运行时间 ( C)宏替换时先求出实参表达式的值,然后代入形参运算求值 ( D)宏替换只不过是字符替代而已 39 下面程 序的输出结果是 _。 #inc1ude stdio.h main() char*p=“BOOL“,“OPK“,“H“,“SP“; int i; for(i=3;i =0;i-,i-) prinf(“%c“,*pi); print(“n“) ( A) SO ( B) SP ( C) SPOPK ( D) SHOB 40 请读程序段: char str=“ABCD“,*p=str print(“%dn“,*(p+4); 程序段的输出结果是 _。 ( A) 68 ( B) O (
19、C)字符 D的地址 ( D)不确定的值 41 在数据的存储结构中,不仅需要存储各数据元素的信息,还要存放各元素之间_的信息。 42 按照 “先进先出 ”的原则组织数据的结构是 _。 43 深度为 5的满二叉树中,叶子结点的个数为 _。 44 在面向对象的方法中, _描述的是具有相似属性与操作的 一组对象。 45 Jackson方法是一种面向 _的结构化方法。 46 若 x和 a均是 int型变量,则计算完 x=(a=4,6*2)后的 x值为 _。 47 若 a是 int型变量,则下列表达式的值为 _。 (a=2*3,a*2), a+4 48 下列程序段是从键盘输入的字符中统计小写字母的个数,用
20、换行符结束循环。请填空。 int n=0,c; c=getchar(); while(c!=n) if(_) n+; 49 下列程序的运行结果是 _。 #include stdio.h main() int a,b,c,n; a=2;b=0;c=1;n=1; while(n =3) c=c*a;b=b+c;+n; printf(“b=%d“,b); 50 下列程序的输 出结果是 _。 main() int i=0,a=0; while(i 20) for(; ) if(i%10)=0)break; else i-; i+=11; a+=i; printf(“%dn“,a); 51 下列程序的运
21、行结果是 _。 #include stdio.h long func(int x) long p; if(x=0x=1) return(1); p=x*func(x-1); return(p); main() printf(“%dn“, func(4); 52 下列程序将二维数组 a的行和列元素互换后存放到另一个二维数组 b中。请填空。 main() int a23= 1,2,3,4,5 , b32,i,j; for(i=0;i 2;i+) for(j=0; j 3;j+) 53 下列程序 的运行结果是 _。 #include stdio.h main() int fun(); fun();
22、fun() static int a4= 1,2,3,4; int i; for(i=0;i 4;i+) ai+=ai; for(i=0;i 4;i+) print f(“%d,“,ai ); printf“n“); 54 设有下列程序: #include stdio.h #include string.h main() int i; char s10,t10; gets(t); for(i=0;i 2;i+) gets(s); if(strcmp(t,s) 0)strcpy(t,s); print f(“%sn“,t); 程序运行后,从键盘上输入 ( CR代表回车符 ): DEF CR BA
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
2000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 试卷 国家 二级 语言 笔试 模拟 124 答案 解析 DOC
