这里讲了对数组元素的操作及二维数组与多维数组,注意,多维数组在内存中也是线性排列存放的。
将数组中的元素倒序排列:
# include <stdio.h>
int main(void)
{
int a[7] = {1, 2, 3, 4, 5, 6, 7}; //升序对数组赋值
int i, j, t;
i = 0;
j = 6;
while (i < j) //倒序排列
{
t = a[i];
a[i] = a[j];
a[j] = t;
++i;
--j;
}
/*
for (i=0, j=6; i<j; ++i, --j) //这样写也可以,分号为三段分隔,逗号为内部分隔。但这样写有些麻烦,可以使用上面的while写法。
{
t = a[i];
a[i] = a[j];
a[j] = t;
}
*/
for (i=0; i<7; ++i)
printf("a[%d] = %d\n", i, a[i]);
return 0;
}
二维数组的赋值与输出:
# include <stdio.h>
int main(void)
{
int a[3][4] = {
{1, 2, 3, 4},
{5, 6, 7, 8},
{9, 10, 11, 12}
}; //推荐这样写,比较整齐。
//输出多维数组内容,需要多重循环嵌套使用。
int i, j;
for (i=0; i<3; i++)
{
for (j=0; j<4; j++)
printf("%-4d", a[i][j]); //对输出格式的控制:%-4d中,负号表示左对齐,4表示每个元素占4个字节。
printf("\n"); //输出换行符
}
return 0;
}