目录
一:光标定位函数
通过光标定位函数,了解什么是二维
gotoxy:头文件 #include<windows.h> 【通过x y 坐标定位 可以看作是 二维数组的定位】
//光标定位函数
void gotoxy(int x,int y)
{
HANDLE hOut;
COORD pos= {x,y};
// 光标的起始位(第1列,第3行) 0是第1列 2是第3行
hOut = GetStdHandle(STD_OUTPUT_HANDLE);
SetConsoleCursorPosition(hOut, pos);
//printf("定位光标位置搜索(%d,%d)\n",pos.X,pos.Y);
}
二:二维数组的写法
二维数组的各个元素地址连续
下面简单介绍二维数组的3种基本写法
二维数组写法1: [逐行给出元素数据内容]
#include<stdio.h>
void array_2()
{ //12个元素地址是连续的
int arr[3][4]={ //二维数组 数组名也是起始地址 arr[0]表示数组地址 表示1234所在的那一行
{1,2,3,4}, //arr[1]表示4567所在那一行
{4,5,6,7}, //arr[2]表示4567所在那一行
{4,5,6,7}
};
printf("%d\n",arr[1][2]); //6
}
int main()
{
array_2();
return 0;
}
二维数组写法2: [一次性给出元素数据内容]
#include<stdio.h>
void array_2()
{
int arr1[3][4]={1,2,3,4,5,6,7,8,9,10,11,12}; //另一种写法
printf("%d\n",arr1[1][2]); //7
}
int main()
{
array_2();
return 0;
}
二维数组写法3: [二维数组可以不写行数,只写列数,编辑器会自己分析]
int arr1[ ][4]={1,2,3,4,5,6,7,8,9,10,11,12};
三:二维数组的元素遍历
遍历打印二维数组:
#include<stdio.h>
void array_2()
{
int i,j;
int arr[3][4]={ //二维数组 数组名也是起始地址 arr[0]表示数组地址 表示1234所在的那一行
{1,2,3,4}, //12个元素地址是连续的
{4,5,6,7},
{4,5,6,7}
};
for(i=0;i<3;i++) //行循环 遍历数组
{
for(j=0;j<4;j++) // 列循环
{
printf("arr[%d][%d]=%d\t",i,j,arr[i][j]);
}
printf("\n");
}
}
int main()
{
array_2();
return 0;
}
四:有关二维数组的几个注意事项
二维数组的数组名是起始地址
arr[0]是数组 代表的是{1,2,3,4}所在行
3行4列 二维数组 arr[0] arr[1] arr[2]三个数组(3行)3个地址
其中arr[0]地址也是二维数组起始地址 也是arr[0][0]地址
二维数组的元素的地址是连续的