ImageVerifierCode 换一换
格式:DOC , 页数:5 ,大小:30.50KB ,
资源ID:498693      下载积分:2000 积分
快捷下载
登录下载
邮箱/手机:
温馨提示:
如需开发票,请勿充值!快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝扫码支付 微信扫码支付   
注意:如需开发票,请勿充值!
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【http://www.mydoc123.com/d-498693.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文([计算机类试卷]国家二级C语言机试(操作题)模拟试卷712及答案与解析.doc)为本站会员(syndromehi216)主动上传,麦多课文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知麦多课文库(发送邮件至master@mydoc123.com或直接QQ联系客服),我们立即给予删除!

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

1、国家二级 C语言机试(操作题)模拟试卷 712及答案与解析 一、程序填空题 1 函数 fun的功能是:将形参 a所撸数组中的前半部分元素中的值和后半部分元素中的值对换。形参 n中存放数组中数据酌个数,若 n为奇数,则中间的元素不动。 例如:若 a所指数组中的数据依次为: 1、 2、 3、 4、 5、 6、 7、 8、 9,则调换后为 6、 7、 8、 9、 5、 1、 2、 3、 4。 请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。 注意:源程序存放在考生文件夹下的 BLANK1 C中。不得增行或删行,也 不得更改程序的结构 ! 1 #include stdio h 2

2、 #define N 9 3 void fun(int a, int r1) 4 int i, t, p; 5 *found* 6 p=(n 2=0)?n 2: n 2+_1_; 7 for(i=0; i n 2; i+) 8 9 t=ai; 10 *found* 11 ai=ap+_2_; 12 *found* 13 _3_=t; 14 15 16 main() 17 int bN=1, 2, 3, 4, 5, 6, 7, 8, 9, i; 18 printf( nThe original data: n); 19 for(i=0; i N; i+)printf( 4d, bi); 20 p

3、rintf( n); 21 fun(b, N); 22 printf( nThe data after moving: n); 23 for (i=0; i N; i+)printf( 4d, bi); 24 printf( n); 25 二、程序修改题 2 给定程序 MODI1 C中函数 fun的功能是:把主函数中输入的 3个数,最大的放在 a中,最小的放在 c中,中间的放在 b中。 例如,输入的数为: 55 12 34,输出结果应当是: a=55 0, b=34 0,c=12 0。 请改正程序中的错误,使它能得出正确结果。 注意:不要改动 main函数,不得增行或删行,也不得更 改程序的结

4、构。 1 #include stdio h 2 void fun(float *a, float *b, float*c) 3 4 *found* 5 float *k; 6 if(*a *b) 7 k=*a; *a=*b; *b=k; 8 *found* 9 if(*a *c) 10 k=*c; *c=*a; *a=k; 11 if(*b *c) 12 k=*b; *b=*c; *c=k; 13 14 main() 15 float a, b, c; 16 printf(Input a b c: );scanf( f f f, a, b, c); 17 printf(a= 4 1f, b=

5、4 1f, c= 4 1 f n n, a, b, c); 18 fun( a, b, 19 printf( n); 20 out=fopen(out clat, w); 21 fprintf(out, d n, n); 22 for(i=0; i n; i+) 23 fprintf(out, 4d n, hi s); 24 fclose(out); 25 国家二级 C语言机试(操作题)模拟试卷 712答案与解析 一、程序填空题 1 【正确答案】 (1)1 (2)i (3)ap+i 【试题解析】 函数 fun的功能是将形参 a所指数组中的前半部分元素中的值和后半部分元素中 的值对换。 第一空:

6、 “p=(n 2=0)?n 2: n 2+_1_; ”和 “ai=ap+_2_; ”“n2=0”判断是否是偶数, ai和 ap+_2_交换,如果 n是偶数, a0和 an 2交换,如果 n是奇数,那么 a0和 an 2+1交换,依此类推,故 n为偶数时 ai和ai+n 2交换, n为奇数时 ai和 ai+n 2+1交换。因此,如果 n是奇数的话, p应该等于 n 2+1,故第一空处应为 “1”。 第二空:由上分析可知, ai和 ai+p交 换,故第二空应为 “i”。 第三空: “t=ai; ai=ap+i; ”,故第三处应该是把 ai赋值给 ap+i, ai保存在 t中,故第三空应为 “ap+

7、i”。 二、程序修改题 2 【正确答案】 (1)float k; (2)if(*a *c) 【试题解析】 函数对三个数进行两两比较,实现判断。 (1)第一个标识下的变量 k是在比较过程中,临时存放数据的变量,因此 k不应是指针,所以将 “float*k; ”改为 “float k; ”。 (2)分析函数中第一个 if语句, 如果主函数中 a b,则对调,把大数放在 a中;分析第二个 if语句,如果主函数中的 a c,则进行对调,又把大数放在 c中,这样的逻辑显然是混乱的。因此,第二个标识下 “if(*a *c)”应该改为 “if(*a *c)”。 三、程序设计题 3 【正确答案】 1 int i, max=a0 s, n=0; 2 for(i=1; i N; i+) 3 if(max ai s)max=ai s; *找出最高成绩 * 4 for(i=0; i N; i+) 5 if(max=ai s)bn+=ai; *找相等的最高成绩并存入数组 b中 * 6 return n; *返回符合条件的人数 * 【试题解析】 程序功能是把分数最高的学生数据放在 h所指的数组中。 (1)要把最高分数的学生数据放在数组中,首先求出最高分数,再使用一个 for循环把所有的成绩进行比较,找出最高的分数来。 (2)找出所有与最高分数相等的学生,并将最高分数的人数累加。

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