【计算机类职业资格】二级C语言机试-163及答案解析.doc
-
资源ID:1325668
资源大小:32.50KB
全文页数:5页
- 资源格式: DOC
下载积分:5000积分
快捷下载

账号登录下载
微信登录下载
下载资源需要5000积分(如需开发票,请勿充值!)
友情提示
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
|
【计算机类职业资格】二级C语言机试-163及答案解析.doc
1、二级 C语言机试-163 及答案解析(总分:100.00,做题时间:90 分钟)一、填空题(总题数:1,分数:30.00)在给定程序中,函数 fun的功能是:统计所有小于等于 n(n2)的素数的个数,素数的个数作为函数值返回。请在程序的下画线处填入正确的内容并把下画线删除,使程序得出正确的结果。注意:源程序存放在考生文件夹下的 BLANK1.C中。不得增行或删行,也不得更改程序的结构。文件 BLANK1.C内容如下:#includestdio.hint fun(int n)int i,j,cnt=0;printf(“/nThe prime number between 3 to%d/n“,n)
2、;for(i=3;i=n;i+)/*found*/for( (1) ;ji;j+)/*found*/if( (2) %j=0)break;/*found*/if( (3) =i)cnt+;printf(cnt%157“%5d“:“/n%5d“,i);return ent;void main( )int n=20,r;r=fun(n);printf(“/nThe number of prime is:%d/n“,r);(分数:30.00)填空项 1:_填空项 1:_填空项 1:_二、改错题(总题数:1,分数:30.00)1.给定程序 MODI1.C中函数 fun的功能是:计算并输出 high以内
3、最大的 10个素数之和。high 的值由主函数传给 fun函数。若 high的值为 100,则函数的值为 732。请改正程序中的错误,使程序能输出正确的结果。注意:不要改动 main函数,不得增行或删行,也不得更改程序的结构。文件 MODI1.C内容如下:#includestdio.h#includemath.hint fun(int high)int sum=0,n=0,j,yes;/*found*/while(high=2) high-;return sum;void main( )printf(“%d/n“,fun(100);(分数:30.00)填空项 1:_三、编程题(总题数:1,分数
4、:40.00)2.请编写函数 fun,其功能是:将所有大于 1小于整数 m的非素数存入 xx所指数组中,非素数的个数通过 k传回。例如:若输入 17,则应输出 9和 4,6,8,9,10,12,14,15,16。注意:部分源程序在文件 PROG1.C中,请勿改动主函数 main和其他函数中的任何内容,仅在函数 fun的花括号中填入你编写的若干语句。文件 PROG1.C内容如下:#includestdio.hvoid fun(int m,int *k,int xx)void main( )int m,n,zz100;printf(“/nPlease enter an integer number
5、 between 10 and 100:“);scanf(“%d“, high-;return sum;void main( )printf(“%d/n“,fun(100);(分数:30.00)填空项 1:_ (正确答案:第 1处:将“while(high=2) )解析:解析 本题虽然是要求求出非素数,实际也是考查素数的判定算法。对于变量 i取出的每一个值,变量 j都从 2开始循环到 i/2,在变量 j的这个范围内,能找到一个 j,i 能够整除它,则 i是非素数,将 i赋值到数组 xx中。循环结束后,将数组的长度 n赋值给*k,通过指针 k带回数组 xx的长度。归纳总结 本套试题的程序填空和程序设计题考查的是素数的判定算法。考题中通常要求对某个范围内的素数进行一定的处理。此类题目的常用程序段如下:for(i=m;i=n;i+) /*求出 m到 n之间的素数*/for(j=2;j=i/2;j+)if(i%j=0)break;if(ji/2)/*若条件成立,则 i是素数,根据程序要求补充后面的语句*/