标题:[求助]关于对一道题目的理解和解题思路问题!
只看楼主
卧龙孔明
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:59
帖 子:3872
专家分:684
注 册:2006-10-13
得分:0 
以下是引用Biglon在2007-8-2 9:27:14的发言:

我这代码答案怎么老是0啊??

是关于上面  t=1-1/(2*2)-1/(3*3)-...1/(m*m) 的代码~~ 




/* Note:Your choice is C IDE */
#include "stdio.h"
float anwser=1.0 ;
int m,i ;
float func1 ( int x );


main()
{
printf ("please input a integer \n");
scanf ("%d",&m);
for (i=1 ;i<=m;i++) anwser -= func1 (i);
printf ("The anwser is %f\n",anwser);

}


float func1 (int x )

{

float h;
h = 1.0 / (x*x) ;
return h ;

}

这样就对了


My Blog: www.aiexp.info
虽然我的路是从这里开始的,但是这里不再是乐土.感谢曾经影响过,引导过,帮助过我的董凯,飞燕,leeco,starwing,Rockcarry,soft_wind等等等等.别了,BCCN.
2007-08-02 09:33
可见光
Rank: 1
等 级:新手上路
帖 子:143
专家分:0
注 册:2007-6-15
得分:0 
程序有问题吧!结果应该是正数吧!
2007-08-02 10:36
可见光
Rank: 1
等 级:新手上路
帖 子:143
专家分:0
注 册:2007-6-15
得分:0 


#include "stdafx.h"
#include "stdio.h"
float anwser=1.0 ;
int m,i ;
float func1 ( int x );


int _tmain(int argc, _TCHAR* argv[])
{
printf ("please input a integer \n");
scanf ("%d",&m);
if(m==1)
{
printf ("The anwser is %f\n",anwser);
}
else
{
for (i=2 ;i<=m;i++) anwser -= func1 (i);
printf ("The anwser is %f\n",anwser);
}
return 0;
}


float func1 (int x )

{

float h;
h = 1.0 / (x*x) ;
return h ;

}
这样应该差不多了吧

2007-08-02 10:41
Biglon
Rank: 1
等 级:新手上路
帖 子:20
专家分:0
注 册:2007-8-2
得分:0 

/* Note:Your choice is C IDE */
#include "stdio.h"
float anwser=1.0 ;
int m,i ;
float func1 ( int x );


main()
{
printf ("please input a integer \n");
scanf ("%d",&m);
for (i=2 ;i<=m;i++) anwser -= func1 (i);
printf ("The anwser is %f\n",anwser);

}


float func1 (int x )

{

float h;
h = 1.0 / (x*x) ;
return h ;

}



果然是有错误,应该从2开始~~

2007-08-02 11:06
Biglon
Rank: 1
等 级:新手上路
帖 子:20
专家分:0
注 册:2007-8-2
得分:0 
#include "stdafx.h"


这是关于什么的库函数
2007-08-02 11:08
liyanbiao1
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2007-8-2
得分:0 
如果t从0.75开始的话,t=1-1/(2*2)-1/(3*3)-...1/(m*m)结果就是0.因为C语言中两个数相除,结果是取整数部分,好像1/(2*2)的实际结果是0.25;但是以语言中把它转换成整数,变成了0;t的初值0.75也要转换成整数计算,转换后也是0
2007-08-02 12:34
小鸟黑黑
Rank: 1
等 级:新手上路
帖 子:61
专家分:0
注 册:2007-7-25
得分:0 
int i,float t=1.0;
其实忘记了float

我讨厌别人叫我菜鸟,不过我的确很菜。。。
2007-08-02 13:07
leeldy
Rank: 1
等 级:新手上路
帖 子:79
专家分:0
注 册:2007-8-2
得分:0 

t=1-1/(2*2)-1/(3*3)-...1/(m*m)定义一个函数

float qt(m)
{
int i;
float t=1.0;
for(i=2;i<=m;i++)
t=t-1/(i*i);
return t;
}

不知道有没有错误哦~~~


↑↑↑↑↑↑↑↑如果我错了,请改正我的错误↑↑↑↑↑↑↑↑

2007-08-02 20:45



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-159809-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.159546 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved