本週主要學習了關於一維陣列的應用,二分查詢法,氣泡排序法,指標法訪問陣列元素,陣列名和指標作函式引數,在陣列中插入和刪除元素,合併兩個有序陣列,編寫出用於查詢和排序的函式,動態儲存管理與動態陣列的實現。
收穫:對陣列有了系統完整的學習,掌握了陣列中的用到的經典演算法,接下來掌握多維陣列的應用
陣列用於儲存單一資料型別的一組數
陣列是有型別屬性的:同一陣列中的每乙個元
素都必須屬於同一資料型別。
乙個陣列在記憶體中佔一片連續的儲存單元。
陣列應用示例:當年第幾天?
#include
int days(int y,int m,int d);
in tmain()
int days(inty,intm,intd)
;for(i=1;i2&&((y%4==0&&y%100!=0)||y%400==0))//若閏年……
sum++;
return 0
}氣泡排序源程式
#include
#definen10
int main()
;for(i=0;ia[j+1])
for(i=0;i<10;i++)//輸出排序後結果
printf("%d",a[i]);
return 0;}}
刪除陣列中的指定元素
#include
#define size100
int deletedata (int,int,int);
int main()
;int locate,i;
scanf("%d",&locate);
//刪除locate處的資料
n=deletedata(d,n,locate);
//輸出刪除後的結果
for(i=0;i在陣列指定位置插入值
include
int insertdata(int,int,int,int);
#define size100
int main()
;int locate,value,i;
scanf("%d%d",&locate,&value);
//在locate位置處插入value
n=insertdata(d,n,locate,value);
//輸出插入後的結果
for(i=0;i
合併兩個有序陣列
#include
int mergedata(int,int,int,int,int);
#definesize100
int main()
;in td2[size]=;
int d3[size*2];
int i;
//合併有序陣列
n3=mergedata(d1,n1,d2,n2,d3);
//輸出合併後的結果
for(i=0;i用函式實現二分查詢
/*功能:在長度為n的有序陣列中查詢k出現的位置*/
#include
int binary_search(intarr,intn,intk);
#define size10
int main()
;int key,index;
printf("inputakeyyouwanttosearch:");
scanf("%d",&key);
index=binary_search(d,size,key);
if(index>=0)
printf("theindexis%d.\n",index);
else
printf("notfound.\n");
return0;
}int binary_search(intarr,intn,intk)
else if(arr[mid]>k)
high=mid-1;
else
low=mid+1;
}return i;
}用函式實現選擇法排序
#include
void select_sort(int array,int n);
int main()
,i;select_sort(a,10);
printf("the sorted array:\n");
for(i=0;i<10;i++)
printf("%d",a[i]);
printf("\n");
return 0;
}void select_sort(int array,int n);
return;
}
陣列 學習總結
學習完陣列之後,明白的陣列主要運用於計算排序之類的問題。知識主要為 陣列型別,陣列的定義與初始化,以及對陣列名含義的理解。排序 查詢 求最大最小值等常用方法。知識 陣列是一組具有相同型別的變數的集合。在定義陣列的時候不能用變數來定義陣列的大小。而陣列可以分為多類,例如 int 整型和 char 字元...
陣列學習總結
第八章 陣列 學習總結 一 具有相同性質的資料組合成乙個新型別的變數,可以用簡單的程式 比如迴圈50次 這個新變數的各個分量進行相同的處理,每個變數仍然保持這個變數的所有性質。8.1一維陣列 陣列的定義 是一組具有相同型別的變數的集合。使用乙個統一的名字來標識這組相對型別的資料,這個名字稱為陣列名,...
陣列學習總結
本章的學習重點在於一維陣列和二維陣列的運用。陣列是按順序排列的一組同種型別的資料構成的集合,因此陣列其實就是集合,在理解了這一概念的基礎上我們對於多資料處理的問題就更為簡便快捷了。這一章的學習,對於我來說確實遇到了一定的困難,最主要的是做題方面很久找不到感覺或者是說陣列問題的思路,但是後來在課上已經...