Day03
c语言新知识:数组
-
数组定义:存放数据的“容器”
-
数组定义:
int a[100];
//a为数组名称,int为数组类型,[]为固定格式,其中的数字为该数组大小。
int a[10]{1,2,3,4,5,6,7,}
//上一行为数组的另一种定义形式,即对数组中的各元素也进行初始化。
//[10]表示数组大小为10,但是下标从0开始,a[0]到a[9],因此不存在a[10]这个元素.假如定义了a[10]数组后后使用a[10]这个元素就会出现越界,a[10]将会被系统赋予一个随机数。
//第三行中,用于分隔开每个至于7往后未初始化的元素默认初始化为0;即第三行中的数组a[10]中各元素分别为{1,2,3,4,5,6,7,0,0,0}.
-
利用数组进行排序
void selectionsort (int arr[],n){
int i,j,temp,minindex;
//外层循环:下标从0开始,共有n个元素,则需要排序n-1次
for(i=0;i<n-1;i++){
//假设下标为i所对应的元素为最小值
minindex=i;
// 内层循环:在未排序部分找到最小值的索引
for(j=i+1;j<n;j++){
if(arr[j]<arr[minindex])
minindex=j;
}
// 将找到的最小值与当前位置交换
temp=arr[i];
arr[i]=arr[minindex];
arr[minindex]=temp;
}
}
void bubblesort (int arr[],n){
int i,j,temp;
int flag;
for(i=0;i<n-1;i++){
flag=0;
for(j=0;j<n-1-i;j++){
if(arr[j]>arr[j+1]){
temp=arr[j+1];
arr[j+1]=arr[j];
arr[j]=temp;
flag=1;
}
}
if(flag==0){
break;
}
}
}