| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 650 人关注过本帖
标题:[求助]大家帮忙看一下程序错误
只看楼主 加入收藏
nmsf
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2005-1-6
收藏
 问题点数:0 回复次数:6 
[求助]大家帮忙看一下程序错误
题目:用函数求解1-1/2+1/3-1/4+1/5-1/6+....1/n
下面是我写的代码,但是在执行时结果永远是0.为什么?
double func(double a){
  int temp=0;
  double j=1,i=0;
  while(j<=a){
     if(temp==0){
 i+=1/j;
 temp=1;
     }else{
       i-=1/j;
       temp=0;
     }
     j++;
  }
  return (i);
}
main(){
  double s,a;
  scanf("%f",&a);
  s=func (a);
  printf("%f\n",s);
  system("pause");
}
搜索更多相关主题的帖子: 程序错误 
2005-01-06 11:50
空前
Rank: 1
等 级:新手上路
帖 子:1146
专家分:0
注 册:2004-5-11
收藏
得分:0 
这样试试:
double func(double a)
{
  int temp=0;
  double j=1,i=0;
  while(j<=a){
     if(temp==0){
i+=1.0/j;
temp=1;
     }else{
       i-=1.0/j;
       temp=0;
     }
     j++;
  }

2005-01-06 13:03
abingchem
Rank: 6Rank: 6
等 级:贵宾
威 望:24
帖 子:716
专家分:0
注 册:2004-12-30
收藏
得分:0 
好像一般都这样写代码的:
double func(double a)
{
  int flag=1;
  double j=1,i=0;
  while(j<=a)
          { i=flag/j;
            flag*= -1;
            j++;
          }
   return i;
}

此人已消失
2005-01-06 13:41
workhard
Rank: 1
等 级:新手上路
帖 子:96
专家分:0
注 册:2004-11-17
收藏
得分:0 
挺奇怪,我将主函数里的a改为整形,就可以了;但不知道为什么现在结果为零。

2005-01-06 14:54
nmsf
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2005-1-6
收藏
得分:0 
不行呀.....改为i-=1.0/j的形式也不行呀.
2005-01-06 15:15
nmsf
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2005-1-6
收藏
得分:0 
double func(double a){
    int flag=1;
    double j=1,i,sum=0;
    while(j<=a){
        i=flag/j;
        flag*=-1;
        sum=sum+i;
        j++;
     }
     return sum;
}
main(){
    double sum,a;
    scanf("%lf",&a);
    sum=func(a);
    printf("%lf\n",sum);
    system("pause");
}
根据3楼提示改了一下,可以了..但是我的做法有什么不对的地方呀?
2005-01-06 16:01
lmr
Rank: 1
等 级:新手上路
帖 子:86
专家分:0
注 册:2004-12-9
收藏
得分:0 
这样就可行了:
#include<stdio.h>
main()
{
int n;
float s=0,i,t,a=1.0;
printf("Please input the number n:");
scanf("%d",&n);
for(i=1;i<=n;i++)
{t=1.0/i;s=s+a*t;a=a*(-1);}
printf("s=%f",s);
getch();
}
2005-01-06 17:02
快速回复:[求助]大家帮忙看一下程序错误
数据加载中...
 
   



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

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