c语言求助,要详细题解

main()
{
int i;
int a[3][3]={'1','2','3','4','5','6','7','8','9'};
for(i=0; i<3;i++)
printf("%d",a[1][i])
}

main()
{
int i; /* 定义了整形变量i */
int a[3][3]={'1','2','3','4','5','6','7','8','9'}; /* 定义了三行三列的数组,第0行为‘1’‘2’‘3’,第1行为‘4’‘5’‘6’,第2行为‘7’‘8’‘9’*/
for(i=0; i<3;i++) /*循环语句,从i =0 开始,循环到i=2 */
printf("%d",a[1][i]); /*打印3*3数组的第1行数据,即a[1][0],a[1][1],a[1][2] */
}
输出结果为4 5 6
这里你要注意,二维数组的第一行为a[0][j],第一列为a[i][0]
温馨提示:答案为网友推荐,仅供参考
第1个回答  2006-11-11
main()
{
int i; //*定义数字型变量i
int a[3][3]={'1','2','3','4','5','6','7','8','9'}; //*定义3*3的数组
for(i=0; i<3;i++) //*循环语句,从i =1 开始,循环到i=2
printf("%d",a[1][i]) //*打印3*3数组的第二行数据,即a[1][0],a[1][1],a[1][2]
}

所以执行这段语句知后,在屏幕会显示
4
5
6
第2个回答  2006-11-11
printf("%d",a[1][i]);//加个分号

将字符“1-9”放在二维数组中
由于a是整型,所以在数组中的值不是1、2、3,而是'1'、'2'、'3'的ASCII码
结果是:525354,对应的是'4'、'5'、'6'的ASCII码
第3个回答  2006-11-12
1
第4个回答  2006-11-11
这是定义了一个3行3列的数组,a[3][3]它的行列标变化为012,不会有3,这是语法规定.这里要打印a[1][0],a[1][1],a[1][2] ,即打印出第二行的所有数,即输出456.(中间没有空格也没有回车)
第5个回答  2006-11-11
这就是打印这个数组的第一列呀,只不过是1、2、3是字符输出的是与之相对应的ASSII值, 是:50 51 52
不客气!
相似回答