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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

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

1、国家二级 C语言机试(操作题)模拟试卷 246及答案与解析 一、程序填空题 1 给定程序中,函数 fun的功能是:计算形参 x所指数组中 N个数的平均值 (规定所有数均为正数 ),将所指数组中小于平均值的数据移至数组的前部,大于等于平均值的数据移至 x所指数组的后部,平均值作为函数值返同,在主函数中输出平均值和移动后的数据。 例如,有 10个正数: 47、 30、 32、 40、 6、 17、 45、 15、 48、 26,其平均值为30 500000。 移动后的输出为: 30、 6、 17、 15、 26、 47、 32、 40、 45、 48。 请在程序的下画线处填入正确的内容并把下画线删

2、除,使程序得出正确的结果。 注意:部分源程序在文件 BLANK1 C中。 不得增行或删行,也不得更改程序的结构 ! 试题程序: 1 #include stdlib h 2 #include stdio h 3 #define N 10 4 double fun(double*x) 5 int i, j; double av, yN; 6 av=0; 7 for(i=0; i N; i+) 8 *found* 9 av+=【 1】 ; 10 for(i=j=0; i N; i+) 11 if(xi av) 12 yj=xi; x i=-1; 13 *found* 14 【 2】 ; 15 16

3、i=0; 17 while(i N) 18 if(xi!=-1) yj+=xi; 19 *found* 20 【 3】 ; 21 22 for(i=0; i N; i+)xi=yi; 23 return av; 24 25 main() 26 int i; double xN; 27 for(i=0; i N; i+) 28 xi=rand() 50; 29 printf( 4 0 f, xi); 30 printf( n); 31 printf( nThe average is: f n, fun(x); 32 printf( nThe result: n, fun(x); 33 for(i

4、=0 ; i N; i+) 34 printf( 5 0 f, xi); 35 printf( n); 36 二、程序修改题 2 下列给定程序中函数 fun的功能是:在字符串的最前端加入 n个 *号,形成新串,并且覆盖原串。 字符串的长度最长允许为 79。 请改正程序中的错误,使它能得出正确的结果。 注意 :部分源程序在文件 NODI1 C中,不要改动 main函数,不得增行或删行,也不得更改程序的结构 ! 试题程序: 1 #include stdio h 2 #include string h 3 void fun(char s, int n) 4 5 char a80, *p; 6 int

5、 i; 7 * found* 8 s=p; 9 for(i=0; in ; i+)ai=*; 10 do 11 ai=*p; 12 i+; 13 14 *found* 15 while(*p+) 16 ai=0 ; 17 strcpy(s, a); 18 19 main() 20 int n; char s80; 21 printf( nEnter a string: ); 22 gets(s); 23 printf( nThe string s n, s); 24 printf( Enter n(number of*): ); 25 scanf( d, n); 26 fun(s, n); 2

6、7 printf( nThe string after in-sert s、 、 n, s); 28 三、程序设计题 3 请编函数 fun,其功能是将一个数字字符串转换成与其面值相同的长整型整数。可调用 strlen函数求字符串的长度。例如:在键盘输入字符串 2345210,函数返回长整型数 2345210。 注意:部分源 程序存在 PROG1 C中,请勿改动主函数 main和其他函数中的任何内容,仅在函数 fun指定的部位填入所编写的若干语句。 试题程序: 1 #include stdio h 2 #include string h 3 void NONO(); 4 long fun(cha

7、r*s) 5 6 7 8 main() 9 char s10; long r; 10 printf(请输入一个长度不超过 9个字符的数字字符串: ); 11 gets(s); 12 r=fun(s); 13 printf(r= ld n, r); 14 NONO(); 15 16 void NONO() 17 *本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。 * 18 FILE * fp, *wf; 19 int i ; long r; 20 char s10, *p; 21 fp=fopen(in dat, r); 22 wf=fopen(out dat, w); 23 for

8、(i=0; i10 ; i+) 24 fgets(s, 10, fp); 25 p=strchr(s, n); 26 if(p)*p=0; 27 r=fun(s); 28 fprintf(wf, 1d n, r); 29 30 fclose(fp); 31 fclose(wf); 32 国家二级 C语言机试(操作题)模拟试卷 246答案与解析 一、程序填空题 1 【正确答案】 (1)xi N (2)j+或 +j (3)i+或 +i 【试题 解析】 填空 1: av代表平均值,本题考查了怎样求平均值,因此本空应该填写 xi N。 填空 2:通过 for循环和 if判断找到 xi中比平均值小的数,

9、并把这些值赋值给yj,因此本空应该填写 j+或者 +j。 填空 3:通过 while循环语句,把 xi中比平均值大的数放在数组 y的后半部分,因此本空应该填写 i+或者 +i。 二、程序修改题 2 【正确答案】 (1)p=s; (2)while(*p+); 【试题解析】 (1)指针 p应指向 s,所以应改为 p=s;。 (2)循环等待,当 while循环 执行一次,临时变量 p应该指向字符串的下一位置,所以应改为 while(*p+);。 三、程序设计题 3 【正确答案】 1 long fun(char*s) 2 3 int i, len; 4 long sum=0; 5 len=strlen(s); 6 for(i=0 ; ilen; i+) 7 8 sum=sum * 10+*s-0; 9 s+; 10 11 return sum; 12 【试题解析】 要把一个数字字符转为相应的数字 ,只要用它的 ASCII码减去 48即可。要把数字字符串转为相应的数字,则要从左到右依次取出字符转为相应数字,乘 10再加上下一位数字。

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