[计算机类试卷]国家二级C语言机试(选择题)模拟试卷23及答案与解析.doc
《[计算机类试卷]国家二级C语言机试(选择题)模拟试卷23及答案与解析.doc》由会员分享,可在线阅读,更多相关《[计算机类试卷]国家二级C语言机试(选择题)模拟试卷23及答案与解析.doc(22页珍藏版)》请在麦多课文档分享上搜索。
1、国家二级 C语言机试(选择题)模拟试卷 23及答案与解析 一、选择题 1 下列叙述中正确的是 ( A)程序执行的效率与数据的存储结构密切相关 ( B)程序执行的效率只取决于程序的控制结构 ( C)程序执行的效率只取决于所处理的数据量 ( D)以上说法均错误 2 下列与队列结构有关联的是 ( A)函数的递归调用 ( B)数组元素的引用 ( C)多重循环的执行 ( D)先到先服务的作业调度 3 对下列二叉树 进行前序遍历的结果为 ( A) DYBEAFCZX ( B) YDEBFZXCA ( C) ABDYECFXZ ( D) ABCDEFXYZ 4 一个栈的初始状态为空。现将元素 1,2,3,A
2、,B,C依次入栈,然后再依次出栈,则元素出栈的顺序是 ( A) 1,2,3,A,B,C ( B) C,B,A,1,2,3 ( C) C,B,A,3,2,1 ( D) 1,2,3,C,B,A 5 下面属于白盒测试方法的是 ( A) 等价类划分法 ( B)逻辑覆盖 ( C)边界值分析法 ( D)错误推测法 6 下面对对象概念描述正确的是 ( A)对象间的通信靠消息传递 ( B)对象是名字和方法的封装体 ( C)任何对象必须 有继承性 ( D)对象的多态性是指一个对象有多个操作 7 软件设计中模块划分应遵循的准则是 ( A)低内聚低耦合 ( B)高耦合高内聚 ( C)高内聚低耦合 ( D)以上说法均
3、错误 8 下面描述中不属于数据库系统特点的是 ( A)数据共享 ( B)数据完整性 ( C)数据冗余度高 ( D)数据独立性高 9 数据库设计过程不包括 ( A)概念设计 ( B)逻辑设计 ( C)物理设计 ( D)算法设计 10 有三个关系 R、 S和 T如下: 则由关系 R和 S得到关系 T的操作是 ( A)自然连接 ( B)交 ( C)投影 ( D)并 11 下列叙述中正确的是 ( A) C程序中所有函数之间都可以相互调用 ( B)在 C程序中 main函数的位置是固定的 ( C)在 C程序的函数中不能定义另一个函数 ( D)每个 C程序文件中都必须要有一个 main函数 12 以下叙述
4、正确的是 ( A) C语言函数可以嵌套调用,例如: fun(fun(x) ( B) C语言程序是由过程和函数组成的 ( C) C语言函数不可以单独编译 ( D) C语言中除了 main函数,其他函数不可作为单独文件形式存在 13 以下选项中合法的标识符是 ( A) 1_ _ ( B) 1 1 ( C) 1_1 ( D) _11 14 表达式 3.6-5/2+1.2+5%2的值是 ( A) 4.3 ( B) 4.8 ( C) 3.3 ( D) 3.8 15 有以下定义: int a; long b; double x, y; 则以下选项中正确的表达式是 ( A) a=xy ( B) a%(int
5、)(x-y) ( C) (a*y)%b ( D) y=x+y=x 16 有以下程序 #include main() int a=0, b=0; /* 给 a赋值 a=10; b=20;给 b赋值 */ printf(“a+b=%dn“,a+b); /* 输出计算结果 */ 程序运行后的输出结果是 ( A)出错 ( B) a+b=30 ( C) a+b=10 ( D) a+b=0 17 以下选项中,值为 1的表达式是 ( A) 1 -0 ( B) 1 - 0 ( C) 1 -0 ( D) 0 - 0 18 当变量 c的值不为 2、 4、 6时,值为 “真 “的表达式是 ( A) (c =2 el
6、se printf(“%dn“, y); ( B) if ( a=0 ) printf(“%dn“, y); else printf(“%dn“, x); ( C) if ( a=0 ) printf(“%dn“, x); else printf(“%dn“, y); ( D) if ( a ) printf(“%dn“, x); else printf(“%dn“, y); 20 有以下程序 #include main() int x=1,y=2,z=3; if(x y) if(y z) printf(“%d“,+z); elseprintf(“%d“,+y); printf(“%dn“,
7、x+ ); 程序的 运行结果是 ( A) 1 ( B) 41 ( C) 2 ( D) 331 21 要求通过 while循环不断读入字符,当读入字母 N时结束循环。若变量已正确定义,以下正确的程序段是 ( A) while(ch=getchar() =N) printf(“%c “,ch); ( B) while(ch=getchar()!=N) printf(“%c “,ch); ( C) while(ch=getchar()=N) printf(“%c “,ch); ( D) while(ch=getchar()=N) printf(“%c “,ch); 22 以下叙述中正确的是 ( A)
8、 continue语句的作用是:使程序的执行流程跳出包含它的所有循环 ( B) break语句只能用在循环体内和 switch语句体内 ( C)在循环体内使用 break语句和 continue语句的作用相 ( D) break语句只能用于 switch语句体中 23 若各选项中所用变量已正确定义,函数 fun中通过 return语句返回一个函数值,以下选项中错误的程序是 ( A) main() x=fun(2,10) ; float fun(int a,intB) ( B) float fun(int a,intB) main() x=fun(i,j); ( C) float fun(int
9、 ,int); main() x=fun(2,10); float fun(int a,intB) ( D) main() float fun(int i,int j); x=fun(i,j); float fun(int a,intB) 24 若有定义语句: int year=2009, *p= 以下不能使变量 year中的值增至 2010的语句是 ( A) (*p)+; ( B) *p+; ( C) +(*p); ( D) *p+=1; 25 若在定义语句: int a,b,c,*p= 接着执行以下选项中的语句,则能正确执行的语句是 ( A) scanf(“%d“,a,b,c); ( B)
10、 scanf(“%d%d%d“,a,b,c); ( C) scanf(“%d“,p); ( D) scanf(“%d“, 26 以下错误的定义语句是 ( A) int x43=1,2,3,1,2,3,1,2,3,1,2,3; ( B) int x4= 1,2,3,1,2,3,1,2,3,1,2,3; ( C) int x3=0,1,1,2,3; ( D) int x3=1,2,3,4; 27 有以下程序 #include main() int i, t3=9,8,7,6,5,4,3,2,1; for(i=0;i 3;i+) printf(“%d “,t2-ii); 程序执行后的输出结果是 (
11、A) 3 5 7 ( B) 7 5 3 ( C) 3 6 9 ( D) 7 5 1 28 有以下程序 #include void fun(int *a, int n) /* fun函数的功能是将 a所指数组元素从大到小排序 */ int t, i, j; for (i=0; i n-1;i+) for (j=i+1; j n; j+) if (ai aj) t=ai; ai=aj; aj=t; main() int c10=1,2,3,4,5,6,7,8,9,0,i; fun(c+4, 6); for (i=0;i 10; i+) printf(“%d,“, ci); printf(“n“);
12、 程序的运行结果是 ( A) 1,2,3,4,9,8,7,6,5,0, ( B) 0,9,8,7,6,5,1,2,3,4, ( C) 0,9,8,7,6,5,4,3,2,1, ( D) 1,2,3,4,5,6,7,8,9,0, 29 以下正确的字符串常量是 ( A) ( B) abc ( C) Olympic Games 30 下列选项中,能够满足 “只要字符串 s1等于字符串 s2,则执行 ST“要求的是 ( A) if(s1-s2=0) ST; ( B) if(s1=s2) ST; ( C) if(strcpy(s1,s2)=1) ST; ( D) if(strcmp(s2,s1)=0)
13、ST; 31 有以下程序 #include int fun(char p10) int n=0,i; for(i=0; i 7; i+) if(pi0= T) n+; return n; main() char str10=“Mon“,“Tue“,“Wed“,“Thu“,“Fri“,“Sat“,“Sun“; printf(“%dn“,fun(str); 程序执行后的输出结果是 ( A) 1 ( B) 2 ( C) 3 ( D) 0 32 有以下程序 #include void fun(char *t , char *s) while(*t!=0) t+; while( (*t+ = *s+ )
14、!=0 ) ; main() char ss10=“acc“,aa10=“bbxxyy“; fun(ss, aa);printf(“%s,%sn“, ss,aa); 程序的运行结果是 ( A) acc,bbxxyy ( B) accbbxxyy,bbxxyy ( C) accxxyy,bbxxyy ( D) accxyy,bbxxyy 33 有以下程序 #include #include void fun (char *w, int m ) char s, *p1, *p2; p1=w;p2=w+m-1; while ( p1 p2 ) s=*p1; *p1=*p2; *p2=s; p1+;
15、p2-; main() char a =“123456“; fun ( a, strlen (a) );puts (a); 程序运行后的输 出结果是 ( A) 123456 ( B) 116611 ( C) 161616 ( D) 654321 34 有以下程序 #include int b=2; int fun(int *k ) b=*k+b; return(B); main() int a10=1,2,3,4,5,6,7,8, i; for(i=2;i #include struct A int a; char b10; double c; void f(struct A t); main
16、() struct A a=1001,“ZhangDa“,1098.0; f (A); printf(“%d,%s,%6.1fn“, a.a,a.b,a.c); void f(struct A t) t.a=1002; strcpy(t.b,“ChangRong“); t.c=1202.0; 程序运行后的输出结果是 ( A) 1002,ZhangDa,1202.0 ( B) 1002,ChangRong,1202.0 ( C) 1001,ChangRong,1098.0 ( D) 1001,ZhangDa,1098.0 37 有以下程序 #include #include typedef st
17、ruct char name9; char sex; float score2; STU; STU f(STU A) STU b=“Zhao“, m, 85.0, 90.0;int i; strcpy(a.name, b.name); a.sex = b.sex; for (i=0; i 2; i+) a.scorei = b.scorei; return a; main() STU c=“Qian“, f, 95.0, 92.0, d; d=f(C); printf(“%s,%c,%2.0f,%2.0fn“,d.name,d.sex,d.score0,d.score1); 程序的运行结果是
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
2000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 试卷 国家 二级 语言 选择题 模拟 23 答案 解析 DOC
