c新手吧 关注:8,585贴子:48,088
  • 4回复贴,共1

新人求助,关于分子为一的分数的累加

只看楼主收藏回复

#include <stdio.h>
int main ()
{
int n,m=0,k,s=1;
printf("give me\n");
scanf("%d",&k);
for(n=1;n<=k;n++)
s*=n;
m+=n;
printf("%d/%d\n",m,s);
return 0;
}
为什么做不对


来自Android客户端1楼2016-03-10 22:25回复
    我也是新手,有什么错误也是难念的,学习了一个礼拜c语言,出现什么让大家觉得不舒服的错误请见谅


    来自Android客户端2楼2016-03-10 22:34
    回复
      2025-05-14 22:43:10
      广告
      你想求1+1/2+1/3+……+1/n吗?
      是的话
      #include <stdio.h>
      int main ()
      {
      int n,m=0,k,s=1;
      printf("give me\n");
      scanf("%d",&k);
      for(n=1;n<=k;n++)
      s*=n; //这里求的是1*2*3*4,在for()循环里
      m+=n; //这里不属于for(因为上面已在语句了)循环),如果要在for()中的话,应该加花括号{ }
      printf("%d/%d\n",m,s);
      return 0;
      }
      PS:1+1/2+1/3+……+1/n并不等于:分子为(1+2+3+...+n),分母为(1*2*3*4*...*n)的分数
      参考一下:
      #include <stdio.h>
      int main (void)
      {float n=1,k,s=0,a=0;//定义数值类型(浮点,才有小数点)
      printf("请输入需要计算到的长度\t");
      scanf("%f",&k);
      while(n<=k)
      {s=s+1.0/n;
      n++;}
      printf("%f\n",s);
      return 0;}
      新手冒泡,大神放过,共勉,我睡~


      3楼2016-03-11 00:28
      收起回复