#include<stdio.h>
//二维数组的打印
int main() {
int arr1[3][4] = { 1,2,3,4,2,3,4,5,3,4,5,6 };
int i = 0;
//也可以重新初始化
//for (i = 0; i < 3; i++)
//{
// int j = 0;
// for (j = 0; j < 4; j++)
// {
// scanf("%d",&arr[i][j]);
// }
// printf("\n");
//}
for ( i = 0; i < 3; i++)
{
int j = 0;
for ( j = 0; j < 4; j++)
{
printf("arr1[%d][%d] = %d ",i,j,arr1[i][j]);
}
printf("\n");
}
return 0;
}
7,二维数组在内存中的存储
复制代码
#include<stdio.h>
//二维数组在内存中的存储
int main() {
int arr1[3][4] = { 1,2,3,4,2,3,4,5,3,4,5,6 };
int i = 0;
for (i = 0; i < 3; i++)
{
int j = 0;
for (j = 0; j < 4; j++)
{
printf("&arr1[%d][%d] = %p\n", i, j, &arr1[i][j]);
}
}
return 0;
}
8,数组传参的时候,形参有2种写法
复制代码
#include<stdio.h>
//数组传参的时候,形参有2种写法
//1,数组 int arr[]
//2,指针 int *arr
void bubble_sort(int arr[],int sz) {//冒泡排序(核心思想:两个相邻的元素进行比较)
//int sz = sizeof(arr) / sizeof(arr[0]);//注意;这句话出现在这里是错误的
//趟数
int i = 0;
for ( i = 0; i < sz-1; i++)
{
//一趟冒泡排序
int j = 0;
for ( j = 0; j < sz-1-i; j++)
{
//交换
int tmp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = tmp;
}
}
}
//把数组的数据排成升序
int main() {
int arr[] = { 9,8,7,6,5,4,3,2,1,0 };
int sz = sizeof(arr) / sizeof(arr[0]);
//冒泡排序的算法,对数据进行排序
bubble_sort(arr,sz);
int i = 0;
for ( i = 0; i < sz; i++)
{
printf("%d ", arr[i]);
}
return 0;
}