首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
给定程序MODll.C中函数fun的功能是:计算并输出下列级数的前N项之和sN,直到SN+1大于q为止,q的值通过形参传入。 例如,若q的值为:50.0,则函数值为:49.394948。 请改正程序中的错误,使程序能输出正确的结果。
给定程序MODll.C中函数fun的功能是:计算并输出下列级数的前N项之和sN,直到SN+1大于q为止,q的值通过形参传入。 例如,若q的值为:50.0,则函数值为:49.394948。 请改正程序中的错误,使程序能输出正确的结果。
admin
2013-04-02
44
问题
给定程序MODll.C中函数fun的功能是:计算并输出下列级数的前N项之和s
N
,直到S
N+1
大于q为止,q的值通过形参传入。
例如,若q的值为:50.0,则函数值为:49.394948。
请改正程序中的错误,使程序能输出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
#include
double fun(double q)
{int n; double s,t;
n = 2;
s = 2.0;
while (s<=q)
{
t=s;
/************found************/
s=s+(n+1)/n;
n++;
}
printf("n=%d\n",n);
/************found************/
return s;
}
main ()
{
printf("%f\n", fun(50));
}
选项
答案
s=s+(n+1.)/n; return t;
解析
(1)注意到n是整型变量,n+1也是整数,因此(n+1)/n是两个整数相除,得到的结果也是整数即1。而“s=s+(n+1)/n;”是s和1转化成double类型之后的和,相当于s=s+1.0,因此计算结果不正确。第一标识下应改为“s=s+(n+1.)/n;”,n+1.计算结果是浮点数,(n+1.)/n得到的结果也是浮点数而不是整数。
(2)注意到在循环体内部“t=s;”,即将s的值赋给t,然后s再累加了下一个级数项。在最后一次进入循环的时候,t记录s的值,s再加一个级数项,下次循环进入之前判断的时候发现s已经大于q了,此时while不再执行,而是执行后面的printf语句,即s>t,s>q。题干要求返回级数的前N项之和SN,而SN+1大于q,因此只能返回t,而不是返回s。第二标识下应改为“return t;”。
转载请注明原文地址:https://kaotiyun.com/show/ZJJp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
设变量a、b、c、d和y都已正确定义并赋值。若有以下if语句:if(a<B)if(c=D)y=0;elsey=1;该语句所表示的含义是______。
设有定义int k=1,m=2;float f=7;,则以下选项中错误的表达式是 ______。
下面程序的运行结果是:[]。fun(intt[],intn){inti,m;if(n=1)returnt[0];elseif(n>=2){m=fun(t,n-1);returnm;}
以下程序用于判断a、b、c能否构成三角形,若能,输出YES,否贝愉出NO。当给a、b、c输入三角形三条边长时,确定a、b、c能构成三角形的条件是需同时满足三个条件;a+b>c,a+c>b,b+c>a。请填空。main(){
若有说明语句:double *p,a;则能通过scanf语句正确给输入项读入数据的程序段是______。
下面程序的功能是:将N行N列二维数组中每一行的元素进行排序,第0行从小到大排序,第1行从大到小排序,第2行从小到大排序,第3行从大到小排序,例如:#defineN4voidsort(inta[][N])
下面程序的功能是建立一个有3个结点的单循环链表,然后求各个结点数值域data中数据的和,请填空。#include<stdio.h>#include<stdlib.h>struc
设有定义:FILE *fw;,请将以下打开文件的语句补充完整,以便可以向文本文件readme.txt的最后续写内容。fw=fopen("readme.txt",【 】);
在结构化分析使用的数据流图(DFD)中,利用【】对其中的图形元素进行确切解释。
随机试题
下列不属于消费者权利的是()。
下列属于进境特许审批货物的有( )。
下列现金流量中,属于投资活动产生的现金流量的是()。
如存在具有支配性影响的关联方,下列情况中,可能表明存在由于舞弊导致的特别风险的有()。
如果没有闪电,人类将失去一位勤劳的“清洁工”。闪电交作时,大气中的部分氧气被激发成臭氧,稀薄的臭氧不但不臭,而且能吸收大部分宇宙射线,使地球表面的生物免遭紫外线过量照射的危害。闪电过程中产生的高温,又可杀死大气中90%以上的细菌和微生物,从而使空气变得更加
简述墨子的思想。
下列标点符号使用全正确的一项是:
(2015年)下列级数中发散的是()
(1)设x>0,y>0,z>0,求函数f(x,y,z)=xyz3在约束条件x2+y2+z2=5R2(R>0为常数)下的最大值;(2)由(1)的结论证明:当a>0,b>0,c>0时,
下列关于防火墙的说法中错误的是(29)。
最新回复
(
0
)