为了账号安全,请及时绑定邮箱和手机立即绑定

二维数组怎么用for定义,比如这个有什么不对的?

二维数组怎么用for定义,比如这个有什么不对的?

C++
1565797464 2015-05-04 12:10:18
 #include<stdio.h>#define n 3#define m 3int main(){ int a[n][m],h,s; for(s=0;s<3;s++) {  for(h=0;h<3;h++)   scanf("%3d",&a[h][s]); }} 
查看完整描述

5 回答

?
Xiao_Gang

TA贡献4条经验 获得超6个赞

建议体会这两种方法的不同,或各自特点,(结合变量的生死考虑)

查看完整回答
2 反对 回复 2015-05-04
?
Xiao_Gang

TA贡献4条经验 获得超6个赞

再提一句,在使用变量前若没有初始化,会带来很大麻烦

查看完整回答
2 反对 回复 2015-05-04
?
Xiao_Gang

TA贡献4条经验 获得超6个赞

你把 int a[n][m]换到main() 以前去试试(对应第一种思路),或者在你定义了 a 之后写一个循环给每个元素赋值为0(对应第二种思路)

查看完整回答
1 反对 回复 2015-05-04
?
Xiao_Gang

TA贡献4条经验 获得超6个赞

你所使用的局部变量是没有初始化的(只有全局变量会自动初始化)。解决的基本思路:1、将a定义为全局的,2、初始化a

查看完整回答
1 反对 回复 2015-05-04
  • 1565797464
    1565797464
    大神,,可以给我改改么?搞不懂这些专业术语啊
  • Xiao_Gang
    Xiao_Gang
    你取地址不对哦,应该是 &a[s][h]
?
海草

TA贡献2条经验 获得超0个赞

数组a没有初始化,也就是a指针没有地址

查看完整回答
反对 回复 2015-05-12
  • 5 回答
  • 0 关注
  • 1939 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信