c语言循环数组赋值,for循环里边给数组赋值的难题

[Quote]

/* E5.4 */

#include 

int main(void)

{

double data[12][5];

int  i=0;  //总共有多少个数字

double row=2.0; //初始数字

for(i=0;i<=11;i++)

{

data[i][0]=row;

printf(“\n%d\t%.2f”,i,data[i][0]);

row=row+0.1;

}

return 0;

}

[/QUOTE]

我是C的初学者,这个程序本身没有问题,是一本教材当中的例程。

出于测试的目的,我把 for(i=0;i<=11;i++) 中的  11, 逐一的往上加,12,13,14的话,程序都报错,出现

[Quote]

应用程序错误

0×40099999 指令引用的0×40099999内存。该内存不能为”read”

要终止程序,请单击确定

要调试程序,请单击取消

[/Quote]

这里我也能理解,因为超出了数组定义的范围,

但是继续增加i,   15,16,17, 18……..之后的话,程序又可以正常的运行了。

这我就非常不理解了,特此求教大家。

说说我的环境:

安装c-free后怎么调试都不通,所以用editplus写C,

编译的话 还是用的c-free安装目录下的gcc

[Quote]

[/Quote]

  • 0
    点赞
  • 1
    收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
©️2022 CSDN 皮肤主题:深蓝海洋 设计师:CSDN官方博客 返回首页
评论
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值