[计算机类试卷]国家二级C语言机试(函数和数组)模拟试卷18及答案与解析.doc
《[计算机类试卷]国家二级C语言机试(函数和数组)模拟试卷18及答案与解析.doc》由会员分享,可在线阅读,更多相关《[计算机类试卷]国家二级C语言机试(函数和数组)模拟试卷18及答案与解析.doc(16页珍藏版)》请在麦多课文档分享上搜索。
1、国家二级 C语言机试(函数和数组)模拟试卷 18及答案与解析 一、选择题 1 关于子函数返回值的程序段中错误的是 ( )。 ( A) main()x=fun(2 , 10); float fun(int a , int b) ( B) float fun(int a, intb)main()x=fun(i , i); ( C) float fun(int, int); main()x=fun(2 , 10); float fun(int a , int b) ( D) main()float fun(int i, int j); x=fun(i , j); float fun(int a ,
2、int b) 2 关于子函数 return语句的叙述中正确的是 ( )。 ( A)一个自定义函数中必须至少有一条 return语句 ( B)一个自定义函数中可以根据不同情况设置多条 return语句 ( C)定义成 void类型的函数中可以有带返回值的 return语句 ( D)没有 return语句的自定义函数执行结束时不能返回到调用处 3 关于 return语句的叙述中错误的是 ( )。 ( A)用户定义的函数中可以没有 return语句 ( B)用户定义的函数中若没有 return语句,则应当定义函数为 void类型 ( C)用户定义的函数中可以有多个 return语句,以便可以调用一次
3、返回多个函数值 ( D)函数的 return语句中可以没有表达式 4 若函数 f调用了函数 g,函数 g又调用了函数 f,则以下说法中正确的是 ( )。 ( A)称为函数的调用 ( B)称为函数的间接递归调用 ( C)称为函数的循环调用 ( D) C语言中不允许这样的递归调用 5 若 int fun(double x10, int *n),则下面针对此函数的函数声明语句中正确的是( )。 ( A) int fun(float, int); ( B) int fun(float *x, int n); ( C) int fun(double *, int *); ( D) int fun(dou
4、ble x, int *n): 6 以下程序的输出结果是 ( )。 int f(int x); main()int n=1, m; m=f(f(f(n); printf( d n, m); int f(int x) return x*2; ( A) 0 ( B) 1 ( C) 2 ( D) 8 7 以下程序的输出结果是 ( )。 #include inff(inx, inty) return(y一 x)*x); main() int a=0, b=4, c=5, d; d=f(f(a, b), f(a, c); printf( d n, d); ( A) 7 ( B) 8 ( C) 9 ( D
5、) 10 8 若函数调用时的实参为变量时,以下关于函数形参和实参的叙述中正确的是( )。 ( A)形参只是形式上的存在,不 占用具体存储单元 ( B)函数的形参和实参分别占用不同的存储单元 ( C)同名的实参和形参占同一存储单元 ( D)函数的实参和其对应的形参共占同一存储单元 9 以下程序的输出结果是 ( )。 #include int f(int x) main() int y; int z; if(x=0x=1)return(3); z=f(3); printf( d n, z); y=x*x一 f(x一 2); return y; ( A) 4 ( B) 5 ( C) 6 ( D) 0
6、 10 执行程序时,给变量 x输入 10,则以下程序的输出结果是 ( )。 int fun(int n) main() if(n=1)return 1; int x; else scanf( dt, &x); x=fun(x); return(n+fun(n1); prinff( d n, x); ( A) 45 ( B) 50 ( C) 60 ( D) 55 11 以下程序的输出结果是 ( )。 int f(int a, int n) main() if(n1) int a: 8, 2, 9, 1, 3, 6, 4, 7, 5; int t; t=f(a, n 1); printf( d n
7、, f(a, 9); return t an1? t: an一 1; else return a0; ( A) 9 ( B) 8 ( C) 7 ( D) 5 12 关于变量使用域的叙述中正确的是 ( )。 ( A)局部变量不能被说明为 static ( B)只要是用户定义的标识符,都有一个有效的作用域 ( C)只有在函数内部定义的变量才是局部变量 ( D)只有全局变量才有自己的作用域,函数中的局部变量没有作用域 13 以下程序的输出结果是 ( )。 int fun(int x, int n) main() static int sum=0, i; int a=1, 2, 3, 4, 5, b=
8、6, 7, 8, 9, s=0; for(i=0; i n; i+)sum+=xi; s=fun(a, 5)+fun(b, 4); printf( d n”, S); return sum; ( A) 50 ( B) 55 ( C) 60 ( D) 65 14 以下程序的输出结果是 () #include main() int fun() int i, s=1; static int x=1; for(i=1; i =2; i+)s=fun(); x*=2; returnx; printf( d n, s); ( A) 4 ( B) 3 ( C) 2 ( D) 1 15 设 char a=xy
9、z, b=x, y, z;,则关于数组长度的叙述中正确的是( )。 ( A)数组 a和 b长度相同 ( B) a数组长度小于 b数组长度 ( C) a数组长度大于 b数组长度 ( D)上述说法都不对 16 若 int m=5, 4, 3, 2, l, i=4;,则下面对 m数组元素的引用中错误的是( )。 ( A) m一一 i ( B) m2*2 ( C) mm0 ( D) mmi 17 若要定义一个具有 5个元素的整型数组,以下错误的定义语句是 ( )。 ( A) int a5=1; ( B) int b=1, 2, 3, 4, 5; ( C) int C2+3 ( D) int i=5,
10、di 18 以下程序的输出结果是 ( )。 void fun(int a, int n) int i, t; for(i=0; i n 2; i+) t=ai; ai=an一 l一 i; an一 1一 i=t; main() int k10=1, 2, 3, 4, 5, 6, 7, 8, 9, 10, i; fun(k, 5); for(i=2; i 8; i+)printf( d, ki); printf( n); ( A) 345678 ( B) 321678 ( C) 1098765 ( D) 876543 19 关于数组的叙述中正确的是 ( )。 ( A)语句 int a43=1, 2
11、, 4, 5;是错误的初始化形式 ( B)语句 int a3: 1, 2, 4, 5;是错误的初始化形式 ( C)在逻辑上,可以把二维数组看成是一个具有行和列的表格或矩阵 ( D)语句 int a43=1, 2, 4, 5;是错误的初始化形式 20 以下程序的输出结果是 ( )。 #include #define N 3 void fun(int aN, int b) main() int i, j; int xNN=1, 2, 3, 4, 5, 6, 7, 8, 9, yN, i; for(i=0; i N; i+) fun(x, y); bi=ai0, for(i=0; i N; i+)p
12、rintf( d, , yi) for(j=1; j N; j+) prinff( n); if(bi aij) bi=aij ( A) 1, 3, 5, ( B) 3, 5, 7, ( C) 2, 4, 8, ( D) 3, 6, 9, 21 关于字符数组的描述中有错误的是 ( )。 ( A)字符数组中的内容不一定是字符串 ( B)可以用输入语句把字符串整体输入给字符数组 ( C)不可以用赋值语句给字符数组名赋字符串 ( D)字符数组只能存放字符串 22 关于字符串的叙述中正确的是 ( )。 ( A)两个连续的单引号 ()是合法的字符常量 ( B)可以对字符串进行关系运算 ( C)两个连续的
13、双引号 ()是合法的字符串常量 ( D)空字符串不占用内存,其内存空间大小是 0 23 以下程序的输出结果是 ( )。 #include int fun(char s)char*p=s; while(*p! =0)p+; return(p一 s); main()printf( d n, fun(0ABCDEF); ( A) 6 ( B) 7 ( C) 1 ( D) 0 24 关于字符串的叙述中正确的是 ( )。 ( A)下面的语句用赋初值方式来定义字符串,其中, 0是必需的, char strl=s, t, r, 0 ( B)有定义语句: char str1=str1;,数组 str1将包含
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
2000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 试卷 国家 二级 语言 函数 数组 模拟 18 答案 解析 DOC
