24小时热门版块排行榜    

查看: 538  |  回复: 9
当前主题已经存档。

lansesanji

银虫 (小有名气)

[交流] c语言求助

各位精通C语言的大虾,我有个问题,我的程序定义了将近10个数组,但是数组的维数如果定义大了就不能正常运行,维数如果小的话就没有问题,到底是怎么回事啊?帮帮忙啊,不胜感激啊……
蓝色三井
已阅   关注TA 给TA发消息 送TA红花 TA的回帖

shenao_07

木虫 (著名写手)


这个你仔细检查下你定义的组数对不,还有语言编写有错误不,应该还是定义的时候出问题了
2楼2009-12-23 17:54:05
已阅   关注TA 给TA发消息 送TA红花 TA的回帖

sun_sun_sun

金虫 (小有名气)

建议LZ把程序贴上来,大家才能帮你分析,有时问题可能出在别的语句上。
3楼2009-12-23 18:23:53
已阅   关注TA 给TA发消息 送TA红花 TA的回帖

lansesanji

银虫 (小有名气)

现在贴上源程序,大家帮帮忙了!

/* Note:Your choice is C IDE */
#include
#include
#define k 6
#define numb 67
void main()
{
  double T[numb][numb],detar,detax,aw,ae,an,as,ap,xw,xe,rn,rs,e1=0,e2=0,b[numb][numb],a[numb][numb]={0};
  double r[numb],x[numb],t[numb][numb];
  double T0[7][numb][numb]={0},a0[7][numb][numb]={0};
  int i,j,m,n,Nk;   
  Nk=pow(2,k)+1;      
  for(i=0;i=100;
  for(j=0;j   for(i=1;i<=Nk;i++) T[Nk]=300;
  for(j=1;j<=Nk;j++) T[j][0]=400;
  for(i=1;i      {for(j=1;j               T[j]=200;
     }
   for(i=0;i<=Nk;i++)
   {for(j=0;j<=Nk;j++)
              T0[1][j]=T[j];
           }
detar=1.0/Nk;
detax=1.0/Nk;
for(i=0;i<=Nk;i++) r=x=detar*i;
do{
        e1=0;
        e2=0;
    for(i=0;i<=Nk;i++)
       {for(j=0;j<=Nk;j++)
               t[j]=T[j];
               }
    for(n=1;n<7;n++)
        {
         for(m=0;m<3;m++)
           {for(i=1;i                {for(j=1;j                          {xw=x-x[i-1];
                    xe=x[i+1]-x;
                    rn=r[j+1]-r[j];
                    rs=r[j]-r[j-1];
                    ap=2/xw/xe+2/rs/rn+1/r[j]/rn;
                          aw=2/(xw*xw+xe*xw);                 
                          ae=2/(xe*xe+xe*xw);
                          as=2/(rs*rs+rs*rn);                  
                          an=2/(rn*rn+rs*rn)+1/r[j]/rn;  
                          T[j]=aw/ap*T[i-1][j]+as/ap*T[j-1]+ae/ap*T[i+1][j]+an/ap*T[j+1]+a0[n-1][j]/ap;
                          T0[n][j]=T[j];
                          }
                 }   
            }
   
          for(i=1;i              {for(j=1;j                  {xw=x-x[i-1];
                  xe=x[i+1]-x;
                  rn=r[j+1]-r[j];
                  rs=r[j]-r[j-1];
                  ap=2/xw/xe+2/rs/rn+1/r[j]/rn;
                        aw=2/(xw*xw+xe*xw);                 
                        ae=2/(xe*xe+xe*xw);
                        as=2/(rs*rs+rs*rn);                  
                        an=2/(rn*rn+rs*rn)+1/r[j]/rn;
                        b[j]=a0[n-1][j]-ap*T[j]+aw*T[i-1][j]+as*T[j-1]+ae*T[i+1][j]+an*T[j+1];
                 }
              }
   
           Nk=(Nk+1)/2;
           r[0]=x[0]=0;
           r[1]=x[1]=pow(2,(n-2))*detar+0.5*detar;
           for(i=2;i=x=r[1]+(i-1)*(1-2*r[1])/(Nk-2);
           r[Nk]=x[Nk]=1;
           for(i=1;i               {for(j=1;j                   {a[j]=(b[2*i-1][2*j]+b[2*i-1][2*j-1]+b[2*i][2*j]+b[2*i][2*j-1])/4;
                   a0[n][j]=a[j];                        
                   }
        
               }
           for(i=0;i<=Nk;i++)
               {for(j=0;j<=Nk;j++)
                        T[j]=0;
                   }
    }       

    Nk=Nk*2-1;
    for(n=5;n>0;n--)
       {
        Nk=Nk*2-1;
        if (Nk==pow(2,k)+1) for(i=0;i<=Nk;i++) r=x=detar*i;
        else {r[0]=x[0]=0;
              r[1]=x[1]=pow(2,(n-2))*detar+0.5*detar;
              for(i=2;i=x=r[1]+(i-1)*(1-2*r[1])/(Nk-2);
               r[Nk]=x[Nk]=1;
                 }
        for(i=1;i<(Nk/2);i++)
           {for(j=1;j<(Nk/2);j++)
                   {T0[n][2*i-1][2*j]=T0[n+1][j]+T0[n][2*i-1][2*j];
                    T0[n][2*i-1][2*j-1]=T0[n+1][j]+T0[n][2*i-1][2*j-1];       
                    T0[n][2*i][2*j]=T0[n+1][j]+T0[n][2*i][2*j];       
                    T0[n][2*i][2*j-1]=T0[n+1][j]+T0[n][2*i][2*j-1];       
                       }
            }
      
        for(m=0;m<3;m++)
           {for(i=1;i                {for(j=1;j                          {xw=x-x[i-1];
                    xe=x[i+1]-x;
                    rn=r[j+1]-r[j];
                    rs=r[j]-r[j-1];
                    ap=2/xw/xe+2/rs/rn+1/r[j]/rn;
                          aw=2/(xw*xw+xe*xw);                 
                          ae=2/(xe*xe+xe*xw);
                          as=2/(rs*rs+rs*rn);                  
                          an=2/(rn*rn+rs*rn)+1/r[j]/rn;                 
                          T0[n][j]=aw/ap*T0[n][i-1][j]+as/ap*T0[n][j-1]+ae/ap*T0[n][i+1][j]+an/ap*T0[n][j+1]+a0[n][j]/ap;
                         }
                }
             }
        for(i=0;i<=Nk;i++)
           {for(j=0;j<=Nk;j++)
                       T[j]=T0[1][j];
           }

        }
   for(i=0;i<=Nk;i++)
      {for(j=0;j<=Nk;j++)
                 {e2=fabs(t[j]-T[j]);
                  if (e2>e1) e1=e2;
                  }
              }
}while (e1>0.001);
for(i=0;i<=Nk;i++)
        {for(j=0;j<=Nk;j++)
        (printf("T[%d][%d]=%lf   ",i,j,T[j]));
        }
}
蓝色三井
4楼2009-12-23 19:43:43
已阅   关注TA 给TA发消息 送TA红花 TA的回帖

lansesanji

银虫 (小有名气)

撒谎那个面那个程序,如果把可换成7,numb换成130,程序就崩溃了,真的不知道怎么回事啊
蓝色三井
5楼2009-12-23 19:45:01
已阅   关注TA 给TA发消息 送TA红花 TA的回帖

lansesanji

银虫 (小有名气)

那个面那个程序,如果把可换成7,numb换成130,程序就崩溃了,真的不知道怎么回事啊
蓝色三井
6楼2009-12-23 19:45:29
已阅   关注TA 给TA发消息 送TA红花 TA的回帖

lansesanji

银虫 (小有名气)

其实这个是数组溢出的问题,请问谁有办法能让他不溢出啊,就是让存储空间大一点啊
蓝色三井
7楼2009-12-23 22:42:32
已阅   关注TA 给TA发消息 送TA红花 TA的回帖

hyoungdecel

银虫 (小有名气)

手机党,看那题都不知所云了。。。
8楼2010-01-16 09:10:52
已阅   关注TA 给TA发消息 送TA红花 TA的回帖

Glass_fish

金虫 (正式写手)

数组长度超出了编译器的范围,建议换一个编译器试一试,
9楼2010-01-29 15:37:15
已阅   关注TA 给TA发消息 送TA红花 TA的回帖

aisingioro

金虫 (正式写手)

数组大小与编译器有关,tc小模式好像是64k(可能会少一点)   
因为局部变量是在栈内存储的,而栈的大小是编译器编译时就确定的.
10楼2010-03-27 12:50:58
已阅   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 lansesanji 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 麻烦专家们看看评委们的意见(F口面上) +5 gdd2018 2026-08-28 10/500 2026-08-29 14:10 by Jacob678
[公派出国] 售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急 +3 ASdOkHsho7FD 2026-08-28 4/200 2026-08-29 14:02 by jCd0dEvKHShX
[找工作] 售SCI文章,我:8O5.5.1.O.54,科目齐全,可+急 +3 ASdOkHsho7FD 2026-08-28 6/300 2026-08-29 11:51 by jCd0dEvKHShX
[考研] 售一区SCI文章T0P,我:8O.551.O54,科目全,可十急 +4 ASdOkHsho7FD 2026-08-28 6/300 2026-08-29 11:40 by jCd0dEvKHShX
[找工作] 售SCI文章,我:8O5.5.1.O.54,科目齐全,可+急 +4 ASdOkHsho7FD 2026-08-28 6/300 2026-08-29 11:29 by jCd0dEvKHShX
[基金申请] 国自然面上复盘~欢迎讨论 (金币+15) +14 晴天加油 2026-08-26 15/750 2026-08-29 11:06 by biily
[基金申请] 投票:  有多少人是今天查系统知道结果的? +16 爱看书的可乐 2026-08-26 18/900 2026-08-29 10:18 by winsaint
[教师之家] 售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急 +4 ASdOkHsho7FD 2026-08-28 7/350 2026-08-29 09:26 by G6APbkg8SA6w
[基金申请] 为什么资助数各大高校都创新高,自己申请怎么就这么难 +12 Kittylucky 2026-08-27 13/650 2026-08-29 00:04 by superceng
[基金申请] 系统查不到 +11 董八千 2026-08-26 11/550 2026-08-28 18:06 by Leogzhya
[基金申请] 有没有仍没收到信息的 +3 德尚中行 2026-08-27 3/150 2026-08-28 15:24 by rongshuxia
[基金申请] 哪位高人中了,把查询到的截图贴出来让我看看,让我长长见识 +5 yuleib84 2026-08-26 6/300 2026-08-28 00:02 by yudaoqian88
[基金申请] 能否退出参与的面上项目解除限项 +23 koalala 2026-08-24 26/1300 2026-08-26 14:29 by 宝贝虫子
[基金申请] 为什么国自然不能直接公布 +4 bjdxyxy 2026-08-26 4/200 2026-08-26 13:12 by qingmu1201
[基金申请] 国合里面能看到了 +7 一怀馨秋 2026-08-26 7/350 2026-08-26 11:23 by zhaosm1982
[基金申请] 系统进不去 +4 yanglien 2026-08-26 5/250 2026-08-26 11:10 by wenfengw83
[基金申请] 今天务委会开完了,明天出结果吗 +19 angus9576 2026-08-25 23/1150 2026-08-26 10:03 by zp519
[基金申请] 国合现在查不到了吗? +10 chengyan1220 2026-08-24 20/1000 2026-08-26 08:57 by peasantsprig
[基金申请] 明天应该可查了!? +6 chengyan1220 2026-08-23 6/300 2026-08-25 19:45 by zfd97
[基金申请] 如果此刻你正在为国基感到焦虑,不妨来听听这首《基金之外》 +8 scalable 2026-08-24 8/400 2026-08-25 12:52 by jnhyjjm
信息提示
请填处理意见