急!!!为什么会出现这种情况??

Dingo1981 2002-04-30 11:22:22
下边是微分方程数值解的一个程序,要求求出数值解并作出函数图象


double * Antic=new double[40];
double * Euler=new double[40];
Antic[0]=1;
Euler[0]=1;

for(int i=1;i<=40;i++)
{
Antic[i]=(5-exp(-5.5*(i*0.1)))/5.5;
}
for(int i=1;i<=40;i++)
{
Euler[i]=Euler[i-1]-exp(-5.5*(i*0.1));
}

但是每次编译的时候总是产生异常,或是被零除,或是内存越界,但是该程序在VC6 中能够编译通过,这是为什么那??
...全文
21 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
书生 2002-05-01
  • 打赏
  • 举报
回复
agree,
声明的是double [40]
循环越界了,
whitelion 2002-04-30
  • 打赏
  • 举报
回复
jishiping(JSP 季世平) 正确
jishiping 2002-04-30
  • 打赏
  • 举报
回复
for(int i=1;i<40;i++) // <40,不是<=40
{
Antic[i]=(5-exp(-5.5*(i*0.1)))/5.5;
}
for(int i=1;i<40;i++) // <40,不是<=40
{
Euler[i]=Euler[i-1]-exp(-5.5*(i*0.1));
}

13,826

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧