一个数组的问题,菜鸟求救!!!

小呀嘛小二郎 2013-03-15 11:00:39
#include<stdio.h>
int main()
{
int a[2][2],i,j,t;
for(i=0;i<=2;i++)
for(j=0;j<=2;j++)
scanf("%d",&a[i][j]);
t=a[0][0]+a[1][1]+a[2][2]+a[0][2]+a[2][0];
printf("%d\n",t);
return 0;
}
求一个3*3的整型矩阵对角线元素的和,为什么a[0][2]的值变成4了?哪位大神帮忙解答下吧,感激不尽!
另:本人最近学c语言遇到好多问题,各位有什么技术群可以推荐给楼主吗?再次感激不尽!!!
...全文
180 7 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
小呀嘛小二郎 2013-03-15
  • 打赏
  • 举报
回复
引用 4 楼 fox_carnival 的回复:
如果是3*3数组,就是数组定义错误:int a[2][2],改为int a[3][3]。 如果是2*2数组,程序中的a[0][2]、a[1][2]、a[2][2]元素引用越界。
嗯,是越界了,学习了。
小呀嘛小二郎 2013-03-15
  • 打赏
  • 举报
回复
引用 2 楼 c1997sdn 的回复:
你要求3×3的整形矩阵,但是定义的数组是2×2的, C/C++ code?1int a[2][2] 应该改成 C/C++ code?1int a[3][3]
嗯 是越界了,谢谢啦
小呀嘛小二郎 2013-03-15
  • 打赏
  • 举报
回复
引用 1 楼 wugui414 的回复:
int a[2][2] 请问这是2×2 还是 3×3?
靠,越界了!感激不尽!!! 能帮忙回答下第二个问题么?
fox_carnival 2013-03-15
  • 打赏
  • 举报
回复
如果是3*3数组,就是数组定义错误:int a[2][2],改为int a[3][3]。 如果是2*2数组,程序中的a[0][2]、a[1][2]、a[2][2]元素引用越界。
子衿悠心 2013-03-15
  • 打赏
  • 举报
回复
几年没碰c了,你这明显数组越界了吧
c1997sdn 2013-03-15
  • 打赏
  • 举报
回复
你要求3×3的整形矩阵,但是定义的数组是2×2的,
int a[2][2]
应该改成
int a[3][3]
wugui414 2013-03-15
  • 打赏
  • 举报
回复
int a[2][2] 请问这是2×2 还是 3×3?

70,020

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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