• for’ loop initial declarations are only allowed in C99 mode


    今天做南邮编程在线的编程题,编程首先计算Fibonacci数列1,1,2,3,5,8,13,21,......的前n项(n不超过40)存入一维整型数组f中,再按%12d的格式输出每项的值,每6项换一行。

    #include<stdio.h>
    int main()
    {
    int f[40],n,count=0;
    scanf("%d",&n);
    f[0]=f[1]=1;
    for(int i=2;i<n;i++)
    {
    f[i]=f[i-1]+f[i-2];
    }

    for( i=0;i<n;i++)
    {
    printf("%12d",f[i]);
    count++;
    if(count%6==0)
    printf("\n");
    }
    printf("\n");
    return 0;
    }

     此程序在VC++6.0,codeblock等里面可以正确编译,但在网站的编译器里面却不行。然后上网百度了下,有大神的博客已经解决了。但是别人不允许转载,想看的自己可以百度看看。

    将for(int i=2;i<n;i++)中的int定义提到外面,变为int i;

    for(int i=2;i<n;i++)

    原因是gcc的标准不同导致for循环的使用有差异。

    下面为修改正确的程序

    #include<stdio.h>
    int main()
    {
    int f[40],n,i,count=0;
    scanf("%d",&n);
    f[0]=f[1]=1;
    for( i=2;i<n;i++)
    {
    f[i]=f[i-1]+f[i-2];
    }

    for( i=0;i<n;i++)
    {
    printf("%12d",f[i]);
    count++;
    if(count%6==0)
    printf("\n");
    }
    printf("\n");
    return 0;
    }

  • 相关阅读:
    02.两数相加
    1480. 一维数组的动态和
    01. 两数之和
    67.二进制求和
    文献阅读(QoS-Aware Web Service Recommendation by Collaborative Filtering)
    服务计算---课程总结报告
    125. 验证回文串
    Docker 常用命令
    Docker 安装
    RESTful
  • 原文地址:https://www.cnblogs.com/jikaiyang/p/5043035.html
Copyright © 2020-2023  润新知