当前位置:编程学习 > C/C++ >>

C语言二维数组赋值

main()

{int a [5][5],i,j,n=1;

for(i=0;i<5;i++)

for(j=0;j<5;j++)

a[i][j]=n++;

printf("The result is :\n");

for(i=0;j<=i;j++)

printf(" "%4",a[i][j]) ;

printf("\n")

}

很多二维数组的题都有4个for循环语句,个都代表什么??请详细解答一下,万分感谢

答案:一般来说,二维数组都是二个For,一个是行,一个是列,如果更多,那就是有不同的需求了,没法定下一定用几个For,一切根据实际需要。

另外你的程序是有问题的

main()

{int a [5][5],i,j,n=1;

for(i=0;i<5;i++)

for(j=0;j<5;j++)

a[i][j]=n++;

printf("The result is :\n");

for(i=0;j<=i;j++) //这句是有问题的,我感觉你是写串行了。我想原来应该是下面这样

for(i=0;i<5;i++)

for(j=0;j<=i;j++)//这里是输出下半三角用的

printf(" "%4",a[i][j]) ;

printf("\n")

}

改成下面程序;

main()

{int a [5][5],i,j,n=1;

for(i=0;i<5;i++)

for(j=0;j<5;j++)

a[i][j]=n++;

printf("The result is :\n");

for(i=0;i<5;i++)

{for(j=0;j<=i;j++)

printf("%4",a[i][j]) ;

printf("\n");}

}

main()

{int a [5][5],i,j,n=1;

for(i=0;i<5;i++)

for(j=0;j<5;j++)

a[i][j]=n++;

printf("The result is :\n");

for(i=0;j<=i;j++)

printf(" "%4",a[i][j]) ;

printf("\n")

}

你的第一个

for(i=0;i<5;i++)

这是 行循环这个数组有5行 依次向下循环

第二个

for(j=0;j<5;j++)

这是列循环 你的这个二维数组 每一行有5个元素 向后循环

第三个FOR

有点错误 应该跟上面一样

for(i=0;i<5;i++)

这是输出的行循环 上面是输入的行循环

程序中的第四个

for(j=0;j<5;j++)

则是输出的列循环

你的后面一个printf 语句也有点错 该是 pirntf("%d,",a[i][j];

二维数组赋值通常情况下用2个循环来做。

用了四个循环,一般前两个循环是用来输入数据,另外两个循环是用来输出数据。

前3个for循环,

for(i=0;i<5;i++) //这个控制行的循环,先从第1列开始

for(j=0;j<5;j++) //这个控制列的循环,先从第1列开始

一般的二维数组赋值,用这2个循环就行了. 外层循环控制行的赋值,内层循环控制列的赋值.

第三个,

for(i=0;j<=i;j++)

printf(" "%4",a[i][j]) ;

//这是循环是控制输出条件的,跟二维数组赋值无任何关系. 控制的条件是: 输出任何行数大于等于列数的数组的值,比如a[1][1],a[2][1]......

上一个:c语言头文件大全
下一个:什么是C语言?

CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,