[计算机类试卷]国家二级C语言机试(操作题)模拟试卷240及答案与解析.doc

上传人:amazingpat195 文档编号:498169 上传时间:2018-11-28 格式:DOC 页数:5 大小:33.50KB
下载 相关 举报
[计算机类试卷]国家二级C语言机试(操作题)模拟试卷240及答案与解析.doc_第1页
第1页 / 共5页
[计算机类试卷]国家二级C语言机试(操作题)模拟试卷240及答案与解析.doc_第2页
第2页 / 共5页
[计算机类试卷]国家二级C语言机试(操作题)模拟试卷240及答案与解析.doc_第3页
第3页 / 共5页
[计算机类试卷]国家二级C语言机试(操作题)模拟试卷240及答案与解析.doc_第4页
第4页 / 共5页
[计算机类试卷]国家二级C语言机试(操作题)模拟试卷240及答案与解析.doc_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
资源描述

1、国家二级 C语言机试(操作题)模拟试卷 240及答案与解析 一、程序填空题 1 给定程序中,函数 fun的作用是:不断从终端读入整数,由变量 a统计大于 0的个数,用变量 c来统计小于 0的个数,当输入 0时结束输入,并通过形参 pa和 pb把统计的数据传回主函数进行输出。 请在程序的下画线处填入正确的内容并把下画线删除,使程序得出正确的结果。 注意:源程序存放在 BLANK1 C中。不得增行或删行,也不得更改程序的结构 ! 试题程序: 1 #include stdio h 2 void fun(int *px, int* py) 3 4 *found* 5 int 【 1】 ; 6 scan

2、f( d, k); 7 *found* 8 while【 2】 9 if(k 0)a+; 10 if(k 0)b+; 11 *found* 12 【 3】 ; 13 14 *px=a; *py=b; 15 16 main() 17 int x, y; 18 fun( x, y); 19 printf(x= d y= d n, x, y); 20 二、程序修改题 2 下列给定程序中,函数 fun的功能是:根据整形参 m的值,计算如下公式的值。例如,若 m中的值为 5,则应输出 0 536389。 请改正程序中的错误,使它能得出正确的结果。 注意:部分源程序在文件MODI1 C中,不要改动 mai

3、n函数,不得增行或删行,也不得更改程序的结构 ! 试题程序: 1 #include stdio h 2 double fun(int m)3 double y=1 0 ;4 int i; 5 *found* 6 for(i=2; i m; i+)7 *found*8 y-=1 (i*i); 9 return(y); 10 11 main()12 int n=5 ;13 printf( nThe result is lfn, fun(n); 14 三、程序设计题 3 请编写函数 fun,该函数的功能是:将 M行 N列的二维数组中的数据,按行的顺序依次放到一维数组中,一维数组中数据的个数存放在形参

4、 n所指的存储单元中。 例如,若二维数组中的数据为: 33 33 33 33 44 44 44 44 55 55 55 55 则一维数组中的内容应该是: 33 33 33 33 44 44 44 44 55 55 55 55。 注意:部分源程序在文件 PROG1 C中。 请勿改动 main函数和其他函数中的任何内容,仅在函数 fun的花括号中填入你编写的若干语句。 试题程序: 1 #include stdio h 2 void fun(int(*s)10, int*b, int*n, int mm, int nn) 3 4 5 6 void main() 7 8 FILE*wf; 9 int

5、w1010=33, 33, 33, 33;44, 44, 44, 44, 55, 55, 55, 55, i, j; 10 int a100=0), n=0; 11 printf(The matrix: n); 12 for(i=0; i3; i+) 13 for(j=0; j4; j+) 14 printf( 3 d, wij); 15 printf( n); 16 17 fun(w, a, n, 3, 4); 18 printf(The A array: n); 19 for(i=0; in; i+) 20 printf( 3d, ai); 21 printf( n n); 22 * 23

6、 wf=fopen(out dat, w); 24 for(i=0; in; i+) 25 fprintf(wf, 3d, ai); 26 fclose(wf); 27 * 28 国家二级 C语言机试(操作题)模拟试卷 240答案与解析 一、程序填空题 1 【正确答案】 (1)a=0, b=0, k (2)(k!=0) (3)scanf( d, jnn ; j+) 6 bk+=sij; 7 *n=k; *通过指针返回元素个数 * 8 【试题解析】 本题可以用两个循环来处理,由于是按行的顺序取出,所以第 1个循环用于控制行下标,第 2个循环用于控制列下标;若改成按列的顺序取出,则循环应改成: for(i=0; inn; i+) for(j=0; jmm; j+) bk+=sji; 要注意 sji的下标,不能用 sij。 若按行取出则列标变化较快,若按列取出则行标变化较快,即循环嵌套时,越在内层的循环,其循环变量变化就越快 。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 考试资料 > 职业资格

copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1