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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

【计算机类职业资格】国家二级C语言程序设计机试(程序设计题)模拟试卷1及答案解析.doc

1、国家二级 C语言程序设计机试(程序设计题)模拟试卷 1及答案解析(总分:8.00,做题时间:90 分钟)一、程序设计题(总题数:4,分数:8.00)1.请编写函数 fun,它的功能是计算下列级数和,和值由函数值返回。 (分数:2.00)_2.编写函数 fun,其功能是:求出 11000之间能被 7或 11整除,但不能同时被 7和 1 1整除的所有整数,并将其放在 a所指的数组中,通过 n返回这些数的个数。 注意:请勿改动主函数 main和其他函数中的任何内容,仅在函数 fun的花括号中填入你编写的若干语句。 试题程序:#includestdiohvoid fun(int*a,int*n)mai

2、n()int aa1000,n,k;void NONO();fun(all,&n);for(k=0;kn;k+) if(k+1)10=0) printf(“n”); else prinff(“5d”,aak); NONO();void NONO()*c本函数用于打开文件,输入测试数据,调用 fun函数,输出数据,关闭文件。*int aa1000,n,k;FILE*fp;fp=fopen(“outdat”,“W”);fun(aa,n);for(k=0;kn;k+) if(k+1)10=0) fprinff(fp,“n”); else fprintf(fp,“5d”,aak); fclose(fp

3、);(分数:2.00)_3.请编写函数 fun,该函数的功能是:将 S所指字符串中 ASC码值为偶数的字符删除,串中剩余字符形成一个新串放在 t所指的数组中。 例如,若 s所指字符串中的内容为“ABCDEFGl2345”,其中字符 B的ASC码值为偶数,字符 2的 ASC码值为偶数,都应当删除,其他依此类推。最后 t所指的数组中的内容应是”ACEG135”。 注意:请勿改动 main函数和其他函数中的任何内容,仅在函数 fun的花括号中填入所编写的若干语句。 试题程序:#includestdioh#includestringh#includeconioh#includestdlibhvoid

4、fun(char * s,char t)void main() FILE*wf; char S100,t100; system(“CLS”); prinff(“nPlease enter string S:”); scanf(“s”,s); fun(s,t); printf(“nThe result is:sn”,t);* wf=fopen(“outdat”,”W”); fun(“ABCDEFGl2345”,t); fprinff(wf,“S”,t); fclose(wf);*(分数:2.00)_4.请编写函数 void fun(int x,int PP,int*n),它的功能是:求出能整除

5、x且不是偶数的各整数,并按从小到大的顺序放在 pp所指的数组中,这些除数的个数通过形参 n返回。 例如,若 x中的值为30,则有 4个数符合要求,它们是 1、3、5、15。 注意:请勿改动主函数 main和其他函数中的任何内容,仅在函数 fun的花括号中填入你编写的若干语句。 试题程序:#includeconioh#includestdioh#includestdlibhvoid fun(int X,int PP,int*n)void main() FILE*wf; int x,aa1000,n,i; system(“CLS”); printf(“nPlease enter an intege

6、r number:n”) ; scanf(“d”,&x); fun(x,aa,&n); for(i=0;in;i+) prinff(“d”,aai);prinff(“n”);* wf=fopen(“outdat”,“w”);fun(30,aa,n);for(i=0;in;i+) fprintf(wf,“d”,88i); fclose(wf);*(分数:2.00)_国家二级 C语言程序设计机试(程序设计题)模拟试卷 1答案解析(总分:8.00,做题时间:90 分钟)一、程序设计题(总题数:4,分数:8.00)1.请编写函数 fun,它的功能是计算下列级数和,和值由函数值返回。 (分数:2.00)

7、_正确答案:(正确答案:double fun(double x,int n) int i; double s=10,sl=10; for(i=1;i=n;i+) sl=sl,* i; *各项中的阶乘* s=s+pow(x,i)sl; *按公式求出* return s; )解析:2.编写函数 fun,其功能是:求出 11000之间能被 7或 11整除,但不能同时被 7和 1 1整除的所有整数,并将其放在 a所指的数组中,通过 n返回这些数的个数。 注意:请勿改动主函数 main和其他函数中的任何内容,仅在函数 fun的花括号中填入你编写的若干语句。 试题程序:#includestdiohvoid

8、 fun(int*a,int*n)main()int aa1000,n,k;void NONO();fun(all,&n);for(k=0;kn;k+) if(k+1)10=0) printf(“n”); else prinff(“5d”,aak); NONO();void NONO()*c本函数用于打开文件,输入测试数据,调用 fun函数,输出数据,关闭文件。*int aa1000,n,k;FILE*fp;fp=fopen(“outdat”,“W”);fun(aa,n);for(k=0;kn;k+) if(k+1)10=0) fprinff(fp,“n”); else fprintf(fp,

9、“5d”,aak); fclose(fp);(分数:2.00)_正确答案:(正确答案:void fun(int*a,int*n) int i,j=0; for(i=1;i=1000;i+) *求 1到 1000之内能被 7或 11整除,但不能同时被 7和 11整除的所有整数,并放入数组 a中* if(i7=011i11=0)&i77!=0) aj+=1; *n=j; )解析:解析:本题考查:if 语句,用来判断能被 7整除或者能被 11整除,但是又不能同时被 7和 11整除的数,在这里要充分理解“逻辑与”和“逻辑或”的区别;for 循环语句的循环变量用来控制取值范围。本题需要运用循环判断结构来

10、实现,其中循环语句比较容易,只要确定循环变量的范围即可。下面来看判断语句,题目要求找出能被 7或 11整除,但不能同时被 7和 11整除的所有整数。能同时被 7和 11整除的整数一定能被 77整除,且不能被 77整除的数不一定就是能被 7或 11整除的数所以可得出程序中的if()语句。注意:(i7=0 i11=0)两边必须要有小括号。3.请编写函数 fun,该函数的功能是:将 S所指字符串中 ASC码值为偶数的字符删除,串中剩余字符形成一个新串放在 t所指的数组中。 例如,若 s所指字符串中的内容为“ABCDEFGl2345”,其中字符 B的ASC码值为偶数,字符 2的 ASC码值为偶数,都应

11、当删除,其他依此类推。最后 t所指的数组中的内容应是”ACEG135”。 注意:请勿改动 main函数和其他函数中的任何内容,仅在函数 fun的花括号中填入所编写的若干语句。 试题程序:#includestdioh#includestringh#includeconioh#includestdlibhvoid fun(char * s,char t)void main() FILE*wf; char S100,t100; system(“CLS”); prinff(“nPlease enter string S:”); scanf(“s”,s); fun(s,t); printf(“nThe

12、result is:sn”,t);* wf=fopen(“outdat”,”W”); fun(“ABCDEFGl2345”,t); fprinff(wf,“S”,t); fclose(wf);*(分数:2.00)_正确答案:(正确答案:void fun(char*s,char t) int i=0; for(;*s!=0;s+) *找出ASC值为奇数的字符依次存入数组 t中* if(* s2=1) ti+=*s; ti=0; *在字符串的末尾加上串结束符* )解析:解析:本题要求将 s所指字符串中 ASC码值为偶数的字符删除,因此本题要求采用一个 for循环来找出 ASC码值为奇数的字符依次存

13、入数组 t中,并使用 if条件句来判断 s所指字符串中 ASC码值是否为奇数。用0加在字符串的末尾来表示字符串的结束。要删除 ASC码值为偶数的字符,也就是要留下 ASC码值为奇数的字符。由于最终是要求出剩余字符(即 ASC码值为奇数)形成的新串,所以本题程序的算法是对原字符串从头到尾扫描,找出 ASC码值为奇数的字符并将其依次存入数组 t中。此外,还要注意数组 t的下标变化和下标的初值(初值必须为 0,即 i=0),ti+的作用是先使用 ti,然后再使 i自增 1。4.请编写函数 void fun(int x,int PP,int*n),它的功能是:求出能整除 x且不是偶数的各整数,并按从小

14、到大的顺序放在 pp所指的数组中,这些除数的个数通过形参 n返回。 例如,若 x中的值为30,则有 4个数符合要求,它们是 1、3、5、15。 注意:请勿改动主函数 main和其他函数中的任何内容,仅在函数 fun的花括号中填入你编写的若干语句。 试题程序:#includeconioh#includestdioh#includestdlibhvoid fun(int X,int PP,int*n)void main() FILE*wf; int x,aa1000,n,i; system(“CLS”); printf(“nPlease enter an integer number:n”) ;

15、scanf(“d”,&x); fun(x,aa,&n); for(i=0;in;i+) prinff(“d”,aai);prinff(“n”);* wf=fopen(“outdat”,“w”);fun(30,aa,n);for(i=0;in;i+) fprintf(wf,“d”,88i); fclose(wf);*(分数:2.00)_正确答案:(正确答案:void fun(int x,int pp,int*n) int i,j=0; for(i=1;i=x;i=i+2) *i 的初始值为 1,步长为 2,确保 i为奇数* if(xi=0) *将能整除 x的数存入数组 pp中* ppj+=i; *n=j;*传回满足条件的数的个数* )解析:解析:本题考查:偶数的判定方法;整除的实现。 本题题干信息是:能整除 x且不是偶数的所有整数。循环语句中变量 i从 1开始且每次增 2,所以 i始终是奇数。 整除的方法,在前面已经讲过多次,这里就不再赘述了。对于本题目要求的不是偶数的判定方法,即该数对 2求余不为 0。除以上方法外,还可以通过 for循环语句直接把偶数筛出去,确保参与操作的数均为奇数。

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