arr_name[const_n];应输入常量表达式
int arr[10]={1,2,3}//不完全初始化;剩下的元素默认为0
char arr1[]={"abcdef"};//最后一位是‘\0’
printf("%d",sizeof(arr1));//打印结果为7
printf("%d",strlen(arr1));//打印结果为6
int main()
{
char arr1[]="abc";
char arr2[]={'a','b','c'};
printf("%d",sizeof(arr1));//打印结果为4
printf("%d",sizeof(arr2));//打印结果为3
printf("%d",strlen(arr1));//打印结果为3
printf("%d",strlen(arr2));//打印结果为随机值
}
求数组长度
sz=sizeof(arr)/sizeof(arr[0]);
一维数组的存储
数组在内存中是连续存放的
二维数组的创建
注意
行可以省略,但列不能省略
将数组作为函数参数
冒泡排序
#include <stdio.h>
void bubble_sort(int arr[],int sz)
{
int i=0;
for(i=0;i<=sz-1;i++)
int flag = 1//假设本次排序已经有序
int j=0;
for(j=0;j<sz-1-i;j++)
{
if(arr[j]>arr[j+1])
{
int tmp =arr[j];
arr[i]=arr[j+1];
arr[j]=tmp;
flag = 0//本次排序不完全有序
}
}
if(flag==1)
break;//停止继续进行冒泡排序
}
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]);
}
}
注意
不能单独用于if(),可以用于嵌套在循环语句中的if()
注意