| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 544 人关注过本帖
标题:数组的定义问题
只看楼主 加入收藏
dezhengwei
Rank: 2
来 自:东华大学
等 级:论坛游民
帖 子:33
专家分:13
注 册:2008-12-16
结帖率:77.78%
收藏
 问题点数:0 回复次数:7 
数组的定义问题
#include<stdio.h>
#include<stdlib.h>
int main(int argc,char *argv[])
{   
    //printf("%d\n",argc);
    if(argc!=4)
    {
        printf("shu ru cuo wu!");
        return 0;
    }
    const int N=atoi(argv[3]);
    //printf("%d\n",N);

    int a[N],i,sum=0;

    a[0]=atoi(argv[1]);
    a[1]=atoi(argv[2]);
    for(i=2;i<N;i++)
    {
        a[i]=a[i-1]+a[i-2];
        sum+=a[i];
    }
    sum=sum+a[0]+a[1];
    for(i=0;i<N;i++)
    {
        printf("%d\n",a[i]);   
    }
    printf("%d\n",sum);
    return 0;
}
程序如上,为什么    int a[N]报错呢,我要怎么实现这个地方呢?
搜索更多相关主题的帖子: 定义 
2009-09-30 23:55
无诲今生
Rank: 8Rank: 8
来 自:桂林理工大学
等 级:蝙蝠侠
威 望:2
帖 子:373
专家分:726
注 册:2009-5-11
收藏
得分:0 
int a[N],i,sum=0;不能在中间声明,把须要声明的变量通通放回前边。

顺境逆境切莫止境,得意失意切莫在意。
2009-10-01 00:27
dezhengwei
Rank: 2
来 自:东华大学
等 级:论坛游民
帖 子:33
专家分:13
注 册:2008-12-16
收藏
得分:0 
回复 楼主 dezhengwei
还是没明白楼主的意思哇
2009-10-01 00:50
dezhengwei
Rank: 2
来 自:东华大学
等 级:论坛游民
帖 子:33
专家分:13
注 册:2008-12-16
收藏
得分:0 
回复 楼主 dezhengwei
这个程序主要是    const int N=atoi(argv[3]);
    int a[N],i,sum=0;实现有问题?
不知道有什么办法实现这个功能呢?
2009-10-01 00:55
无诲今生
Rank: 8Rank: 8
来 自:桂林理工大学
等 级:蝙蝠侠
威 望:2
帖 子:373
专家分:726
注 册:2009-5-11
收藏
得分:0 
把int a[N],i,sum=0;放回第四行后边

顺境逆境切莫止境,得意失意切莫在意。
2009-10-01 01:42
dezhengwei
Rank: 2
来 自:东华大学
等 级:论坛游民
帖 子:33
专家分:13
注 册:2008-12-16
收藏
得分:0 
回复 4楼 dezhengwei
楼主,你执行成功了么?放在第四行那么N都没有定义了,怎么能定义数组a[N]。。
2009-10-01 09:32
chenaiyuxue
Rank: 5Rank: 5
来 自:山东滨州
等 级:职业侠客
帖 子:334
专家分:370
注 册:2008-5-20
收藏
得分:0 
数组的大小必须在程序编译的时候就确定,以便给其分配存储空间。而程序中是通过读取第四个命令行参数来获得数组的大小N,然后定义a[N],也就是说一开始数组的大小不确定,这是不正确的。可以考虑用指针来实现动态内存分配。
int* a;
const int N=atoi(argv[3]);
a = (int*) malloc(N * sizeof(int));

你是雪,我是尘埃,相遇是意外;你坠落,在我胸怀,流进我血脉。
2009-10-01 09:33
dezhengwei
Rank: 2
来 自:东华大学
等 级:论坛游民
帖 子:33
专家分:13
注 册:2008-12-16
收藏
得分:0 
回复 6楼 dezhengwei
很好,很强大,谢谢!受教了!
2009-10-05 17:13
快速回复:数组的定义问题
数据加载中...
 
   



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

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