《三级信息管理技术机试真题2007年04月.pdf》由会员分享,可在线阅读,更多相关《三级信息管理技术机试真题2007年04月.pdf(2页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、1 真题 三级信息管理技术机试真题2007 年 04 月计算机三级信息管理(机试)第 1 题:下列程序的功能是:设A,B,C为三个不为零的正整数,计算并输出下列不定方程组解的个数 cnt 以及满足此条件的所有A,B,C之和 sum。不定方程组为:A+B+C=13 A-C=5 请编写函数 countValue()实现程序的要求,最后调用函数writeDat()把结果 cnt 和 sum输出到文件 out.dat中。试题源程序#includestdio h void WriteDat();int cnt,sum:void countvalue()void main()cnt=sum=0:count
2、value();printf(cnt=%dn,cnt);printf(sum=%dn,sum);WriteDat();void WriteDat()FILE*fp;fp=fopen(outdat,w);fprintf(fp,%dn%dn,cnt,sum);fclose(fp);参考答案:void countvalue()int a:for(a=6;a 13;a+)if(18-2*a 0)cnt+:sum+=13:详细解答:本题主要考查的是解方程问题。本题的难点和解题的关键在于分析题目,对2 于给定的方程组变形得到B=18-2*A,C=A-50,因此 A从 6 开始可能满足方程,而由第一个方程知道A不可能大于 13,因此我们可以用 for 循环内嵌 if语句来解出方程,如果 B0,那么此时的 A 就满足该方程组,cnt 增 1,并且由第一个方程知道有一组解sum的值增加 13。