| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 528 人关注过本帖
标题:运行结果很奇怪
只看楼主 加入收藏
血瞳水妖
Rank: 1
等 级:新手上路
帖 子:2
专家分:2
注 册:2010-7-5
结帖率:100%
收藏
已结贴  问题点数:10 回复次数:8 
运行结果很奇怪
一个关于求3*3矩阵对角线上数字之和的问题,写好之后运行结果很诡异
附件是运行截图
#include<stdio.h>
main()
{int a[3][3],sum=0;
 int j,i;
 printf("Enter data\n");
 for(i=0;i<=3;i++)
     for(j=0;j<=3;j++)
未命名.zip (9.95 KB)

        scanf("%d",&a[i][j]);
     for(i=0;i<3;i++)
         sum+=a[i][i];
 printf("sum=%d\n",sum);
}
搜索更多相关主题的帖子: 结果 运行 
2010-07-14 15:33
forever74
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:CC
等 级:版主
威 望:58
帖 子:1694
专家分:4282
注 册:2007-12-27
收藏
得分:1 
附件放在代码中间,真的很诡异。

对宇宙最严谨的描述应该就是宇宙其实是不严谨的
2010-07-14 15:40
xxwpk007
Rank: 4
等 级:业余侠客
帖 子:166
专家分:289
注 册:2007-7-29
收藏
得分:1 
for(i=0;i<=3;i++)
     for(j=0;j<=3;j++)

越界
2010-07-14 15:43
forever74
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:CC
等 级:版主
威 望:58
帖 子:1694
专家分:4282
注 册:2007-12-27
收藏
得分:0 
数据输入的方式也很诡异。
首先把代码里面的<=都改成<
然后按照代码,最正确的输入方式是每行一个整数,接着就回车。连敲9行。
这样结果就不那么诡异了。

对宇宙最严谨的描述应该就是宇宙其实是不严谨的
2010-07-14 15:44
无雨无星
Rank: 2
等 级:论坛游民
帖 子:28
专家分:37
注 册:2010-6-23
收藏
得分:1 
一个3*3的数组实际排序为a[0][0],a[0][1],a[0][2],a[1][0]a[1][1]a[1][2]a[2][0]a[2][1]a[2][2]
没了 实际内存中地址排序也是这么排序的,如果你要打a[4]的话没有错误,实际用的就是a[1][1]了
到2截止,没有3的事,越界不报错,但是结果肯应不对的了


[ 本帖最后由 无雨无星 于 2010-7-14 16:48 编辑 ]
2010-07-14 16:43
sunyh1999
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:14
帖 子:1178
专家分:3032
注 册:2009-5-17
收藏
得分:1 
这个,越界了
应该是:
for(i=0;i<3;i++)
楼主你应该好好复习知识了,呵呵

欢迎来到我的博客:http://blog..cn/noisunyuhong
2010-07-14 16:52
qq493190279
Rank: 2
来 自:湖北黄冈
等 级:论坛游民
帖 子:11
专家分:12
注 册:2010-3-14
收藏
得分:1 
数组我们定义n个,但是它自己是从第0到第n-1的,所以不能超过n-1个就是不能达到第n个
2010-07-14 23:48
快速回复:运行结果很奇怪
数据加载中...
 
   



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

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