[计算机类试卷]国家三级(数据库技术)机试模拟试卷51及答案与解析.doc

上传人:visitstep340 文档编号:495326 上传时间:2018-11-28 格式:DOC 页数:2 大小:25.50KB
下载 相关 举报
[计算机类试卷]国家三级(数据库技术)机试模拟试卷51及答案与解析.doc_第1页
第1页 / 共2页
[计算机类试卷]国家三级(数据库技术)机试模拟试卷51及答案与解析.doc_第2页
第2页 / 共2页
亲,该文档总共2页,全部预览完了,如果喜欢就下载吧!
资源描述

1、国家三级(数据库技术)机试模拟试卷 51及答案与解析 一、程序设计题 1 下列程序的功能是:计算出启然数 SIX和 NINE,它们满足的条件是SIX+SIX+SIX=NINE+NINE的个数 cnt,以及满足此条件的所有 SIX与 NINE的和sum。请编写函数 countValue()实现程序要求,最后调用函数 writeDAT()把结果 cnt和 sum输出到文件 OUT51 DAT中。其中的 S, I, X, N, I, N, E各代表一个十进制数。 注意:部分源程序已给出。 请勿改动主函数 main()和写函数 writeDAT()的内容。 试题程序: #include int cnt

2、, sum; void CountValue() Void main() Cnt=Sum=0; COUNtValUe(); printf(“满足条件的个数 =%n“, cnt): printf(“满足条件的所有的 SIX与 NINE的和 =%dn“, sum); WriteDAT(); FILE *fp; fp=fopen(“OUT51 DAT“, “w“); fprintf(fp, “%dn%dn“, cnt, sum); fclose(fp); 国家三级(数据库技术)机试模拟试卷 51答案与解析 一、程序设计题 1 【正确答案】 void countValue() int i=100; w

3、hile(1) if(3*i%2=0 & 3*i/2 1000 & 3*i/2 =9999) /*如果满足条件 SIX+SIX+SIX=NINE*NINE*/ /*即一个 3位数乘 3再除 2余数为 0, 且所得的数为 4位数 */ cnt+; /*统计满足条件的数的个数 */ sum+=i+3*i/2; /*求满足此条件的所有 SIX与 NINE的和 */ i+; else i+; /*如果不满足条什,则取下一个数 */ if(i 999 | 3*i/2 9999) break; /*当 SIX不为 3位数时或所得的数不为四位数时,退出循环 */ 【试题解析】 本题考查的知识点如下: (1)循环与判断的嵌套使用。 (2)多条件的布尔运算。 (3)“%” 与 “/”运算符的使用。 根据题意,求的是满足 3位 数乘以 3等于 4位数乘以 2的数的个数。我们可以使用循环结构对所有的 3位数进行判断,若某个 3位数乘以 3整除 2所得的数是 4位整数,则这个 3位数足满足条件的数。当判断的数不再是 3位数或者进行处理后所得的数大于 9999,则要退出循环。在这里,还要注意判断结构中,各条件之问是用 “与 ”运算还是用 “或 ”运算。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 考试资料 > 职业资格

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