下列程序的功能是:计算出自然数SIX和NINE,它们满足的条件是SIX+SIX+SIX=NINE+NINE的个数 cnt,以
下列程序的功能是:计算出自然数SIX和NINE,它们满足的条件是SIX+SIX+SIX=NINE+NINE的个数 cnt,以及满足此条件的所有SIX与NINE的和sum。请编写函数countValue()实现程序要求,最后调用函数 writeDAT()把结果cnt和sam输出到文件OUT51.DAT中。其中的S,L X,N,I,N,E各代表一个十进制数。
注意:部分源程序已给出。
请勿改动主函数main()和写函数writeDAT()的内容。
试题程序:
include<stdio. h>
int cnt, sum;
void countValue()
{
}
void main ()
{
cnt=sum=O;
countValue ();
printf ("满足条件的个数=%d\n", cnt);
printf ("满足条件所有的SIX与NINE的和=%d\n", sum);
writeDAT ();
}
writeDAT ( )
{
FILE *fp;
fp=fopen("OUT51.DAT", "w");
fprintf (fp, "%d\n%d\n", cnt, sum);
fclose (fp);
}
void countValue() { int i=100; while (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 II 3'i/2>9999) break; /*当SIXP不为3位数或所得的数不为四位数时,退出循环*/ } } } 解析:本题二查的知识点如下:
(1)循环与判断的嵌套使用。
(2)多条件的布尔运算。
(3)“%”与“/”运算符的使用。
根据题意,求的是满足3位数乘以3等于4位数乘以2的数的个数。我们可以使用循环结构对所有的3位数进行判断,若某个3位数乘以3整除2所得的数是4位整数,则这个3位数是满足条件的数。当判断的数不再是3位数或者进行处理后所得的数大于9999,则要退出循环。在这里,还要注意判断结构中,各条件之间是用“与”运算还是用“或”运算。
英语单词填空(组成单词)1)d.l.e.d.m.i2)l.e.p.o.i.ee3)u.y.g.o. 英语 2020-04-25 …
已知字母组合成英语单词1、e e t t i n h r 2、e e r a t w h 3、o 英语 2020-05-14 …
...1.weshouldhelpwhentheyareintrouble.a.othersb.t 英语 2020-05-16 …
receive这个单词地拼法,我不太肯定想请问一下.是以下哪一种拼法正确呢?(1)/R//E//C 英语 2020-05-17 …
纵横字谜之英语暑假作业题(s)(o)(r)(r)(n)(g)(r)(e))(a)(k)(k)(e) 英语 2020-06-06 …
重新排列字母,写出单词1.s,a,p,e,c,2.r,o,e,t,c,k,3.d,c,o,o,t, 英语 2020-06-06 …
A.根据释义,拼写单词.1.costingalotofmoneyx,p,s,i,e,e,e,n,v 英语 2020-06-10 …
选择元音字母在单词中发音不同的一项.1;A:h(a)nd;B:f(a)ce;C:(a)pple.2 英语 2020-06-17 …
关于《出师表》第一段中“恢弘志士之气,不宜妄自菲薄,引喻失义,以塞中间之路也.”中的“塞”应该读“ 语文 2020-07-06 …
重组字母为单词e,e,r,w,he,e,r,t,he,e,se,a,sw,m,s,ir,t,p,i 英语 2020-07-09 …