鱼C论坛

 找回密码
 立即注册
查看: 4318|回复: 6

[已解决]求助各位这个程序问题在哪?

[复制链接]
发表于 2017-11-10 10:52:53 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
RT,该程序的目的是输出交错序列 1-2/3+3/5-4/7+5/9-6/11+... 的前N项之和,但我无论如何输出的都是零,这是为什么?

#include <stdlib.h>
int main()
{
  int i,n;
  float k,sum;
  scanf("%d",&n);//输入
  for(sum=0,i=1,k=0;i<=n;i++)
  {
    if(i%2!=0){
      k=(double)(i/(2i-1));
    }else if(i%2==0){
      k=(double)((i/(2i-1))*(-1));//判断为奇数偶数
    }
    sum=sum+k;//求和
    printf("%.3f\n",sum);
    k=0;
  }
}
最佳答案
2017-11-10 17:45:07
人形UMP9 发表于 2017-11-10 17:20
return 0不打没关系吧?include复制时候打掉了

强制转换的位置不对,应该先将 i 进行转换再进行计算而不是计算完了再转换,因为
(double)(2/3) == 0

(double)2/3 == 0.66666
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2017-11-10 11:21:41 | 显示全部楼层
   k=(double)(i/(2i-1));
    }else if(i%2==0){
      k=(double)((i/(2i-1))*(-1));//判断为奇数偶数


其它的先不说,这里的2i 是什么玩意?
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-11-10 11:50:21 From FishC Mobile | 显示全部楼层
编程中都是不认识2i或者ab这种数学中陌生的相乘格式,请在中间加上*
不知道你这怎么通过编译的,前面少了#include <stdio.h>
后面也少了return 0和大括号
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-11-10 17:20:57 | 显示全部楼层
BngThea 发表于 2017-11-10 11:50
编程中都是不认识2i或者ab这种数学中陌生的相乘格式,请在中间加上*
不知道你这怎么通过编译的,前面少了# ...

return 0不打没关系吧?include复制时候打掉了
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-11-10 17:21:34 | 显示全部楼层
ba21 发表于 2017-11-10 11:21
k=(double)(i/(2i-1));
    }else if(i%2==0){
      k=(double)((i/(2i-1))*(-1));//判断为奇数偶数  ...

*号当时打掉了
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-11-10 17:45:07 From FishC Mobile | 显示全部楼层    本楼为最佳答案   
人形UMP9 发表于 2017-11-10 17:20
return 0不打没关系吧?include复制时候打掉了

强制转换的位置不对,应该先将 i 进行转换再进行计算而不是计算完了再转换,因为
(double)(2/3) == 0

(double)2/3 == 0.66666
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-11-11 16:10:52 From FishC Mobile | 显示全部楼层
不说我还真没看出2i来
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-7-5 08:39

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表