CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  C/C++ >  C语言

C问题。给我提意见吧。

楼主Bigstorns(图们江计算机程序编制小组)2002-05-11 20:05:07 在 C/C++ / C语言 提问

/*   题:2/1   +   3/2   +   5/3   +   8/5   +   13/8   +21/13…………   *   TC2编译器通过。/  
  /*规律:第三个数的分母等于前两个分母之和,第四个数的分母等于第二分母+第三分母…………  
  分子也是如此,等于前两个分子之和。*/  
   
  main()  
  {  
  float   frac1=1,   frac2=2,   sum=0,   i;/*   frac   分数   */  
   
  for   (i=0;   i   <10;   i++)  
  {  
  sum   +=   frac2/frac1;  
   
  frac1   =   frac1+frac2;  
   
  sum   +=   frac1/frac2;  
   
  frac2   =   frac1+frac2;  
  }  
   
  printf("sum=%f",sum);  
  }  
   
  /*   为了测试能否输出   2/1,3/2,5/3,8/5,13/8,21/13………………,写了以下的程序。请先运行下面的程序。   */  
   
  /*  
  main()  
  {  
  float   frac1=1,   frac2=2,   i;  
   
  for   (i=0;   i   <10;   i++)  
  {  
   
  printf("%4.0f\\%-4.0f\n",frac2,frac1);  
   
  frac1   =   frac1+frac2;  
   
  printf("%4.0f\\%-4.0f\n",frac1,frac2);  
   
  frac2   =   frac1+frac2;  
  }  
  }  
  */ 问题点数:20、回复次数:10Top

1 楼Bigstorns(图们江计算机程序编制小组)回复于 2002-05-11 20:06:20 得分 0

对了。i本来应该是int型。Top

2 楼Bigstorns(图们江计算机程序编制小组)回复于 2002-05-11 20:08:50 得分 0

这是谭浩强先生的C程序设计第二版第六章第八个题。我正在学C。  
  题,求出前20项之和。  
  上面我忘记说了。sorryTop

3 楼Bigstorns(图们江计算机程序编制小组)回复于 2002-05-11 20:17:32 得分 0

upTop

4 楼spark_li(晕忽忽(恶人谷:通讯连长))回复于 2002-05-11 20:41:12 得分 20

#include   <stdio.h>  
   
  void   main()  
  {  
  int   i,j,tmp,cnt;  
  float   sum=0.00;  
   
  i=1;  
  j=2;  
   
  for   (cnt=0;cnt<20;cnt++)  
  {  
  printf("%d/%d=%f\n",j,i,(double)j/i);  
  sum=sum+(double)j/i;  
  tmp=j;  
  j=j+i;  
  i=tmp;  
  }  
   
  printf("sum=   %f\n",sum);  
  }  
  Top

5 楼fly_1108(V客)回复于 2002-05-11 20:45:41 得分 0

你的程序功能是实现了,但不简洁,有些地方可以更简明,   删去两个步骤。可以吗?  
  Top

6 楼eduhf_123(经历)回复于 2002-05-11 22:38:02 得分 0

void   main(void)  
  {  
    int   i;  
    float   s=0;  
    int   shulie(int   tmp);  
    for(i=1;i<=20;++i)  
    {  
      s+=(shulie(i+1)/shulie(i));  
    }  
    printf("The   sum   is   %f",s);  
  }  
   
  int   shulie(int   tmp)  
  {  
    int   i,   t1=1,t2=0,t3=0;  
    for(i=1;i<=tmp;++i)  
      {  
        t3=t1+t2;  
        t1=t2;  
        t2=t3;  
      }  
    return(t3);  
  }Top

7 楼spark_li(晕忽忽(恶人谷:通讯连长))回复于 2002-05-11 22:50:53 得分 0

谁还有更简洁的么?Top

8 楼Bigstorns(图们江计算机程序编制小组)回复于 2002-05-12 13:22:24 得分 0

好像下面那几位的更复杂。而且更难读。  
   
  Top

9 楼Bigstorns(图们江计算机程序编制小组)回复于 2002-05-12 13:24:18 得分 0

我写的只有十二行。而且计算部分只有四行。  
                                      sum   +=   frac2/frac1;  
   
  frac1   =   frac1+frac2;  
   
  sum   +=   frac1/frac2;  
   
  frac2   =   frac1+frac2;  
  Top

10 楼Bigstorns(图们江计算机程序编制小组)回复于 2002-05-12 13:25:47 得分 0

下面两个好像不能删除。Top

相关问题

  • 请给我提提意见
  • 我刚工作要用C++请大家多提意见,提议者有分!
  • 谁能给我的网页提意见,不说话都加分!
  • 给我的网页提意见,来者有分!!!保证!!!http://kkoffice.yeah.net
  • 大家给我的网站提提意见
  • 大家给我的软件提提意见
  • 请大家给我的共享软件提提意见(vc++6.0)
  • 我制作的网站,大家给提提意见!!
  • 我的BBS 刚做的 大家给提意见
  • 使用c#开发的一个邮件客户端,完成了基本的功能,让大家给我提提意见

关键词

  • 分母
  • 个数
  • frac
  • cnt
  • 分子
  • sum
  • float
  • 等于前两个
  • main

得分解答快速导航

  • 帖主:Bigstorns
  • spark_li

相关链接

  • C/C++ Blog
  • C/C++类图书
  • C/C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo