一、一维数组
定义一维数组的一般形式
类型符 数组名 [常量表达式]
1. 初始化方式
(1)在定义数组时对全部数组元素赋予初值
int a[10] = {0,1,2,3,4,5,6,7,8,9};
(2)部分赋值
int a[10] = {0,1,2,3,4};
这表示只给前面5个元素赋初值,系统自动给后面的元素赋为0
(3)初始化为0
int a[10] = {0};
全部都为0
另:sizeof关键字,能计算括号中对应数据的内存空间大小
2. 冒泡排序法
#include <stdio.h>
int main()
{
int arr[]={12, 8,9,10,100,35,66};
int i,j;
int temp;
int len = sizeof(arr)/sizeof(arr[0]);
for(i=0; i<len-1; i++)
{
for(j=0; j<len-i-1; j++)
{
if(arr[j] < arr[j+1])
{
temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
}
for(i=0; i<len; i++)
{
printf("%d ",arr[i]);
}
return 0;
}
3. 简单选择排序法
将数组里的a[0]和a[1].....a[n]分别进行比较,使a[0]存放着最大/最小值,再依次往下将a[1]和剩下的分别进行比较,以此类推
#include <stdio.h>
int main()
{
int arr[]={12, 8,9,10,100,35,66};
int i,j;
int temp;
int len = sizeof(arr)/sizeof(arr[0]);
for(i=0; i<len-1; i++)
{
for(j=i+1; j<len; j++)
{
if(arr[i] < arr[j])
{
temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
}
}
for(i=0; i<len; i++)
{
printf("%d ",arr[i]);
}
return 0;
}
二、二维数组
定义:类型说明符 数组名[常量表达式][常量表达式]
如:float a[3][4]
想要打印数组时按照行列分开输出,可以加上putchar(‘\n’); 注意括号里面是单引号
注意:可以不写第1维(行)的长度,但是第2维(列)的不能省!
int a[][4]={3,4,5,6,7,8,9,10};