#include <stdio.h> int m[3][3]={{1},{2},{3}}; int n[3][3]={1,2 ,3}; main( ) { printf(“%d,”, m[1][0]+n[0][0]); printf(“%d\n”,m[0][1]+n[1][0]); }
运行结果为:
N诺智能批改可自动批改答案并给出反馈,每次使用将消耗 1个诺币
您当前的诺币数量: 个
N诺正在智能批改,预计需要30秒,请稍候...
我们一步一步分析这个程序。
数组初始化
数组 m:
int m[3][3] = {{1}, {2}, {3}};
相当于:
m[0]: {1, 0, 0} m[1]: {2, 0, 0} m[2]: {3, 0, 0}
数组 n:
int n[3][3] = {1, 2, 3};
这是按行填充,不够的补 0:
n[0]: {1, 2, 3} n[1]: {0, 0, 0}(因为只有 3 个元素)
所以:
n[0][0]=1, n[0][1]=2, n[0][2]=3 n[1][0]=0, n[1][1]=0, n[1][2]=0 n[2]: {0, 0, 0}
计算表达式
m + n
m = 2
n = 1
2 + 1 = 3
m = 0
n = 0
0 + 0 = 0
输出结果
3,0
答案:3,0
3
0
3,0
3, 0
30
J
2 2
m 0行0列开始数 1 00 2 00 3 00 n 123 000 000 打印:2+1=3 0+0=0 打印 3,0
m={{1,0,0},{2,0,0},{3,0,0}}
n={{1,2,3},{0,0,0},{0,0,0}}
m[1][0] + n[0][0] = 2 + 1 = 3
m[0][1] + n[1][0] = 0 + 0 = 0
3 0
1,0
1
3,?
运行错误
3,1
3,1
32
3 2
2,0
3,2
登录后提交答案