三级数据库技术机试-271

上传人:公**** 文档编号:471042947 上传时间:2023-05-15 格式:DOC 页数:2 大小:20KB
返回 下载 相关 举报
三级数据库技术机试-271_第1页
第1页 / 共2页
三级数据库技术机试-271_第2页
第2页 / 共2页
亲,该文档总共2页,全部预览完了,如果喜欢就下载吧!
资源描述

《三级数据库技术机试-271》由会员分享,可在线阅读,更多相关《三级数据库技术机试-271(2页珍藏版)》请在金锄头文库上搜索。

1、三级数据库技术机试 -271( 总分: 100.00 ,做题时间: 90 分钟 )一、上机题( 总题数: 1,分数: 100.00)1.下列程序的功能是:计算500800之间素数的个数ent,并按所求素数的值从小到大的顺序,再计算其间隔加、减之和,即第1个素数-第2个素数+第3个素数-第4个素数+第 5个素数的值sumo请编写函数countValue()实现程序的要求,最后调用函数 writeDat()把结果ent和sum输出到文件OUT66.DA中。 注意:部分源程序己给出。请勿改动主函数 main()和写函数 writeDAT()的内容。试题程序:include int cnt, sum;

2、void countValue ()void main ( )cnt=sum=0;countValue ();printf( 素数的个数 =%d/n,cnt);printf( 按要求计算机得值 =%d/n, sum);writeDAT ( );writeDAT ( )FILE *fp;fp=fopen (OUT66.DAT, w);fprintf (fp, %d/n%d/n, cnt, sum);fclose(fp);分数: 100.00)正确答案: (void countValue() int i , j , half , yy100 ;for(i=500 ;i 800;i+) half=i

3、/2 ;for(j=2 ;j =half) /* 如果该数是素数,则将该数存入数组 yy 中 */ yycnt=i ;cnt+ ; /* 统计素数的个数 */for(i=0 , j=-1 ; i ent ; i+) /* 计算这些素数的间隔加、减之和 */ i=j*-1;sum+=j*yyi ;)解析: 解析 本题考查的知识点如下:(1) 利用循环和“ %”进行素数的判断。(2) 间隔加、减的实现。在本题中,首先要找出判断素数的方法。若一个数a依次除以从2到a/2的数所得的余数都不是 0,则这个数是素数。用此方法依次判断出从500到800区间内的素数。由题意可知,第1,3,5个素数计算加法,第2,4,6个素数计算减法。减去1个正整数就是加上负的这个正整数,所以可以将这个正整数乘以-1 进行加法。 使用循环实现求和, 在奇数次的循环中, 每个素数乘以 1,偶数次的循环中, 素数乘以 -1 , 就可实现间隔加、减。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 活动策划

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号