| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3730 人关注过本帖
标题:1+1+2+3+5+8+13+21+34+55+...谁来帮我看看 我写的对不?
只看楼主 加入收藏
hedy704
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2010-7-23
结帖率:100%
收藏
 问题点数:0 回复次数:19 
1+1+2+3+5+8+13+21+34+55+...谁来帮我看看 我写的对不?
计算1+1+2+3+5+8+13+21+34+55+...的前30项的和的结果
程序代码:
#include<stdio.h>
void main()
{
    int f1,f2,sum,i;
    f1=1;
    f2=1;
    sum=0;
    for(i=1;i<=15;i++)
    {
       

        f1=f1+f2;
        f2=f2+f1;
        sum=sum+f1+f2;
        printf("f1=%d f2=%d\n",f1,f2);
        printf("sum=%d\n",sum);
    }

}

搜索更多相关主题的帖子: 计算 
2010-07-28 23:46
Rexfield
Rank: 6Rank: 6
来 自:幻想乡
等 级:侠之大者
威 望:1
帖 子:240
专家分:484
注 册:2010-7-28
收藏
得分:0 
#include<stdio.h>
int main()
{
    int f1,f2,sum,i;
    f1=0;
    f2=1;
    sum=0;
    for(i=1;i<=10;i++)
    {
        sum=sum+f1+f2;
        f1+=f2;
        f2=f1-f2;
    }
    printf("f1=%d f2=%d\n",f1,f2);
    printf("sum=%d\n",sum);
    return 0;
}

If you're not failing every now and again, it's a sign you're not doing anything very innovative.
2010-07-29 00:04
Rexfield
Rank: 6Rank: 6
来 自:幻想乡
等 级:侠之大者
威 望:1
帖 子:240
专家分:484
注 册:2010-7-28
收藏
得分:0 
呃,循环次数是我用来测试10次结果是否143。用来验证的,最后只需改成30即可。
C99中规定main的返回值是int

If you're not failing every now and again, it's a sign you're not doing anything very innovative.
2010-07-29 07:36
zx5252256
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2010-7-29
收藏
得分:0 
回复 楼主 hedy704
#include<stdio.h>
int main()
{
    int f1,f2,sum,i;
    f1=0;
    f2=1;
    sum=0;
    for(i=1;i<=15;i++)
    {
        sum=sum+f1+f2;
        f1+=f2;
        f2=f1+f2;
    }
    printf("f1=%d f2=%d\n",f1,f2);
    printf("sum=%d\n",sum);
    return 0;
}
个人认为该这两个地方就可以了~!~!
2010-07-29 09:10
zx5252256
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2010-7-29
收藏
得分:0 
回复 3楼 xugaige
两者几乎没什么区别,甚至有int的时候也可以不屑return 0,系统会默认的~!~!
2010-07-29 09:12
ggyy4k
Rank: 5Rank: 5
等 级:职业侠客
帖 子:111
专家分:334
注 册:2010-6-28
收藏
得分:0 
回复 楼主 hedy704
楼上几位的程序好像都有点问题
把楼主的程序改了下,大家看看
#include<stdio.h>
void main()
{
    long int f1,f2,sum;int i;/*f1,f2,sum都要用长整型*/
    f1=1;
    f2=1;
    sum=2;/*sum初始化为2*/
    for(i=1;i<=14;i++)
    {
        f1=f1+f2;
        f2=f2+f1;
        sum=sum+f1+f2;
        printf("f1=%ld,f2=%ld\n",f1,f2);
        printf("sum=%ld\n",sum);
    }
getch();
}

[ 本帖最后由 ggyy4k 于 2010-7-29 09:27 编辑 ]
2010-07-29 09:26
hedy704
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2010-7-23
收藏
得分:0 
到底哪个是对的 。。。。
2010-07-29 10:38
mh316182402
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2010-7-29
收藏
得分:0 
各位兄弟,我是新学的,请问一下,你们循环那个i是干什么用的?我不知道他和F1、F2有什么关系?
2010-07-29 10:54
v1_alex
Rank: 2
等 级:论坛游民
帖 子:10
专家分:11
注 册:2010-7-28
收藏
得分:0 
#include<stdio.h>
main()
{
    int a[30],i,sum;
    int a[0]=1;
    int a[1]=1;
    for(i=2;i<30;i++)
        a[i]=a[i-1]+a[i-2];
    for(i=0;i<30;i++)
        sum+=a[i];
    printf("%ld\n",sum);
}
我这个行吗? 指导下!
2010-07-29 11:38
Rexfield
Rank: 6Rank: 6
来 自:幻想乡
等 级:侠之大者
威 望:1
帖 子:240
专家分:484
注 册:2010-7-28
收藏
得分:0 
以下是引用zx5252256在2010-7-29 09:12:30的发言:

两者几乎没什么区别,甚至有int的时候也可以不屑return 0,系统会默认的~!~!
默认?GCC没有默认哦。

If you're not failing every now and again, it's a sign you're not doing anything very innovative.
2010-07-29 12:06
快速回复:1+1+2+3+5+8+13+21+34+55+...谁来帮我看看 我写的对不?
数据加载中...
 
   



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

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