[计算机类试卷]国家二级C语言机试(函数和数组)模拟试卷6及答案与解析.doc
《[计算机类试卷]国家二级C语言机试(函数和数组)模拟试卷6及答案与解析.doc》由会员分享,可在线阅读,更多相关《[计算机类试卷]国家二级C语言机试(函数和数组)模拟试卷6及答案与解析.doc(24页珍藏版)》请在麦多课文档分享上搜索。
1、国家二级 C语言机试(函数和数组)模拟试卷 6及答案与解析 一、选择题 1 以下叙述中正确的是 ( A)用户自己定义的函数只能调用库函数 ( B)不同函数的形式参数不能使用相同名称的标识符 ( C)在 C语言的函数内部,可以定义局部嵌套函数 ( D)实用的 C语言源程序总是由一个或多个函数组成 2 有定义语句: char*s1=OK, *s2=ok;以下选项中,能够输出 K的语句是 ( A) if(strcmp(s1, s2)!=0)puts(s1); ( B) if(strcmp(s1, s2)!=0)puts(s2); ( C) if(strcmp(s1, s2)=1)puts(s1);
2、( D) if(strcmp(s1, s2)=0)puts(s1); 3 有以下程序 #include stdio h intfun(inta, intb) if(b=0)returna;、 elsereturn(fun(-a, -b); main( ) printf( dn, fun(4, 2); 程序的运行结果是 ( A) 1 ( B) 2 ( C) 3 ( D) 4 4 以下叙述中 正确的是 ( A)函数名代表该函数的入口地址 ( B)所有函数均不能接受函数名作为实参传入 ( C)函数体中的语句不能出现对自己的调用 ( D)如果函数带有参数,就不能调用自己 5 已定义以下函数 intfu
3、n(int*P)retum*p; )fun函数返回值是 ( A)不确定的值 ( B)一个整数 ( C)形参 P中存放的值 ( D)形参 P的地址值 6 有以下程序 #include stdio h intflintx, inty) retum(y-x)*x); main( ) inta=3, b=4, c=5, d; d=flfla, b), f(a, c); printf( dn, d); 程序运行后的输出结果是 ( A) 10 ( B) 8 ( C) 9 ( D) 7 7 有以下程序 yoidfun(inta, intb, intc) a=b; b=c; c=a; main( ) inta
4、=10, b=20, c=30; fun(a, b, c); printf( d, d, dn, C, b, a); ) 程序运行后的输出结果是 ( A) 10, 20, 30 ( B) 20, 30, 10 ( C) 30, 20, 10 ( D) 0, 0, 0 8 有以下程序 #include stdio h intfun(inta, intb) retuma+b; main( ) intx=6, y=7, z=8, r; r=fun(fun(x, y), Z-); printf( dn, r); ) 程序运行后的输出结果是 ( A) 15 ( B) 21 ( C) 20 ( D) 31
5、 9 有以下程序 #include stdio h intflintx) inty; iflx=011x=1)return(3); y=x*x-f(x-2); returny; main( ) intz; z=f(3); printf( dn, z); 程序的运行结果是 ( A) 9 ( B) 0 ( C) 6 ( D) 8 10 有以下程序 fun(intx) intp; if(x=0x=1)return(3); p=x-fun(x-2); returnp; main( ) printf( n, fun(7); ) 执行后的输出结果是 ( A) 3 ( B) 7 ( C) 0 ( D) 2
6、11 以下叙述中正确的是 ( A)对于变量而言, 定义 和 说明 这两个词实际上是同一个意思 ( B)在复合语句中不能定义变量 ( C)全局变量的存储类别可以是静态类 ( D)函数的形式参数不属于局部变量 12 在一个 C源程序文件中所定义的全局变量,其作用域为 ( A)由具体定义位置和 extern说明来决定范围 ( B)所在程序的全部范围 ( C)所在函数的全部范围 ( D)所在文件的全部范围 13 有以下程序 #include stdio h func(intn) staticintnum=1; num=num+n; printf( d, num); yoidmain( ) func(3
7、); func(4); printf(n); ) 程序运行后的输出是 ( A) 45 ( B) 35 ( C) 48 ( D) 34 14 有以下程序 #include stdio h intfun( ) staticintx=1; x*=2; retumx; main( ) inti, s=1; for(i=1; i =3; i+) s*=fun( ); printf( dn, s); ) 程序运行后的输出结果是 ( A) 0 ( B) 10 ( C) 30 ( D) 64 15 有以下程序 intfun(intx, intn) staticintsum=0, i; for(i=0; i n
8、; i+)sum+=xi; retumsum; main( ) inta-1, 2, 3, 4, 5), b=6, 7, 8, 9), s=0; s=fun(a, 5)+fun(b, 4); printf( dn, s); ( A) 50 ( B) 45 ( C) 60 ( D) 55 16 有下列程序: inta=4; intflintn) intt=0; staticinta=5; if(n 2)inta=6; t+=a+; elseinta=7; t+=a+; returnt+a+; main( ) ints=a, i=0; for(; i 2; i+)s+=f(i); printfl
9、dn, s); 程序运行后的输出结果是 ( A) 28 ( B) 24 ( C) 32 ( D) 36 17 下列定义数组的语句中,正确的是 ( A) intN=10; intxN; ( B) #defineN10intxN; ( C) intx0 10; ( D) intx; 18 有下列程序: main( ) inti, s=0, t=1, 2, 3, 4, 5, 6, 7, 8, 9; for(i=0; i 9; i+=2)s+=*(t+i); printf( dn, s); 程序执行后的输出结果是 ( A) 20 ( B) 45 ( C) 36 ( D) 25 19 VN程序中函数 f
10、的功能是:当 flag为 1时,进行由小到大排序;当 flag为 0时,进行由大到小排序。 yoidf(intb, intn, intflag) inti,j, t; for(i=0; i n-1; i+) for(j=i+lj nj+) if(flag?bi bj: bi bD) t=bi; bi=bj; bD=t; ) main( ) inta10=5, 4, 3, 2, 1, 6, 7, 8, 9, 10, i; f( a2, 5, 0); f(a, 5, 1); for(i=0; i 10; i+、 ) printf( d, , ai); 程序运行后的输出结果是 ( A) 1, 2,
11、3, 4, 5, 6, 7, 8, 9, 10, ( B) 3,4, 5, 6, 7, 2, 1, 8, 9, 10, ( C) 5,4, 3, 2, 1, 6, 7, 8, 9, 10, ( D) 10, 9, 8, 7, 6, 5, 4, 3, 2, 1 20 有以下程序 #include stdio h main( ) intc6: 10, 20, 30, 40, 50, 60, *p, *s; P=c; S= c5; printf( dn, s-P); ) 程序运行后的输出结果是 ( A) 50 ( B) 6 ( C) 5 ( D) 60 21 如果定义 floata10, x;则以下
12、叙述中正确的是 ( A)表达式 a+1是非法的 ( B)语句 a= x;是非法的 ( C)三个表达式 a1、 *(a+1)、 * a1表示的意思完全不同 ( D)表达式 * a1是非法的,应该写成 *( (a1) 22 若有以下程序 #include stdio h main( ) inti, j=0; chara=Howareyou!, b10; for(i=0; ai; i+) if(ai=)bj+=ai+1; bj=0; printf( sn, b); 则程序的输出结果是 ( A) Howareyou ( B) Hay! ( C) Howareyou! ( D) ay 23 以下数组定义
13、中错误的是 ( A) intx3=0); ( B) intx2113=1, 2, 3, 4), 5,6; ( C) intx3: 1, 2, 3), 4, 5, 6); ( D) intx23=l, 2, 3, 4, 5, 6; 24 以下定义数组的语句中错误 的是 ( A) intnum3=1, 2), 3, 4, 5, 6; ( B) intnum=1,2, 3, 4, 5, 6); ( C) intnum4: l, 2, 3, 4, 5, 6); ( D) intnum24=1, 2), 3, 4), 5,6; 25 有下列程序: main( ) inta44=1,4, 3, 2, 8,
14、6, 5, 7, 3, 7, 2, 5, 4, 8, 6, 1, i,j, k,t; for(i=0; i 4; i+) for(j=0; j 3; j+) for(k=j+1; k 4; k+) if (aji aki)t=aDi; aji=aki; aki=t; )/*按列排序 */ for(i=0; i 4; i+)printf( d, , aii); 程序运行后的输出结果是 ( A) 8, 7, 3, 1, ( B) 1, 6, 5, 7, ( C) 4, 7, 5, 2, ( D) 1, 6, 2, 1 26 若有定义: intw35;则以下不能正确表示该数组元素的表达式是 ( A)
15、 *(*w+3) ( B) *(*(w+1) ( C) *(w+1)4 ( D) *( w00+1) 27 设有定义: intx23;则以下关于二维数组 x的叙述错误的是 ( A)数组 x可以看作是由 x0和 x1两个元素组成的一维数组 ( B)可以用 x0=0;的形式为数组所有元素赋初值 0 ( C)元素 x0可看作是由 3个整型元素组成的一维数组 ( D) x0和 x1是数组名,分别代表一个地址常量 28 有以下程序 #include stdio h intfun(chars) char*P=s: while(*P!=0)p+; return(p-s); main( ) printf( d
16、n, fun(OabcDEF); 程序运行后的输出结果是 ( A) 6 ( B) 7 ( C) 1 ( D) 0 29 以下叙述中正确的是 ( A) charca35=A, B, CCC);是不合语法的 ( B)字符串数组,是指数组中的每个元素都是一个存放字符串的一维数组 ( C) charca5=tA, BB, CCC;是不合语法的 ( D) char*ca3=A, BB, CCC);是不合语法的 30 以下叙述中正确的是 ( A)语句 charstr10=string!;和 charstr10=string!;并不等价 ( B)对于一维字符数组,不能使用字符串常量来赋初值 ( C)对于字符
17、串常量 string!,系统已自动在最后加入了 0字符,表示串结尾 ( D)在语句 charstr1=string!;中,数组 str的大小等于字符串的长度 31 以下选项中,没有编译错误的是 ( A) charstr3=d, e, b, u, g, 0; ( B) charstrl5=pass, str26; str2=str1; ( C) charname10; name=china: ( D) charstr4; str4=helloworld; 32 设有定义: charp=1, 2, 3), *cq=p;以下不能计算出一个 char型数据所占字节数的表达式是 ( A) sizeof(
18、p) ( B) sizeof(char) ( C) sizeof(q) ( D) sizeof(p0) 33 以下不能将 S所指字符串正确复制到 t所指存储空间的是 ( A) for(i=0; ti=si; i+); ( B) while(*t=*s)t+; s+; ( C) for(i=0, j=0; ti+=sj+; ); ( D) do*t+=*s+; while(*S); 34 有以下程序 #include stdio h yoidmain( ) chars: 012xy; inti,n=0; for(i=0; si!=0; i+) if(si =a si =Z)n+; printf(
19、 dn, n); 程序运行后的输出结果 ( A) 0 ( B) 3 ( C) 5 ( D) 2 35 若要求从键盘读入含有空格字符的字符串,应使用函数 ( A) getc( ) ( B) gets( ) ( C) getchar( ) ( D) scanf( ) 国家二级 C语言机试(函数和数组)模拟试卷 6答案与解析 一、选择题 1 【正确答案】 D 【试 题解析】 一个 C语言源程序可以由一个或多个源文件组成,每个源文件可由一个或多个函数组成,这些函数可以是自定义函数,也可以是库函数,各个函数之间没有土从关系,不能嵌套定义函数。 【知识模块】 函数和数组 2 【正确答案】 A 【试题解析】
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
2000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 试卷 国家 二级 语言 函数 数组 模拟 答案 解析 DOC
