指標對陣列排序選擇法和冒泡法
選擇法程式碼:
#include <stdio.h>
main()
{
int i,j,t,a[10]={9,8,7,6,5,4,3,2,1,0},*p=a;
for (i=0;i<9;i++)
for (j=i+1;j<10;j++)
{
if (*(a+i)>*(a+j))
{
t=*(a+i);
*(a+i)=*(a+j);
*(a+j)=t;
}
}
for (p;p<a+10;p++) //p指向陣列首地址,範圍在a[9]內,p自增一次代表指向陣列下個元素的地址
printf("%d",*p);//輸出目前p指向地址的值
/*
for (i=0;i<10;i++) //a+i代表陣列名(即首地址)增加i個元素,
printf("%d",*(a+i)); //取目前a+i的地址的結果
*/
}
冒泡法程式碼:
#include <stdio.h>
main()
{
int i,j,t,a[10]={9,8,7,6,5,4,3,2,1,0},*p=a;
for (i=0;i<9;i++)
for (j=0;j<9-i;j++)
{
if (*(a+j)>*(a+j+1)) //第一個元素與第一個元素後一個元素比較
{
t=*(a+j);
*(a+j)=*(a+j+1);
*(a+j+1)=t;
}
}
for (i=0;i<10;i++)
printf("%d",*(a+i));
}
相關文章
- 排序法:選擇、冒泡、插入和快排排序
- C語言:排列陣列的三種方法:冒泡法、選擇法、插入法C語言陣列
- (三)陣列的定義、折半查詢、排序(選擇和冒泡)陣列排序
- 陣列基本操作及冒泡演算法、直接選擇排序陣列演算法排序
- 陣列選擇排序陣列排序
- 選擇排序法排序
- 指標陣列和陣列指標與二維陣列指標陣列
- alanwang[GDOU] 用選擇排序法對10個整數排序排序
- 陣列指標,指標陣列陣列指標
- 指標陣列與陣列指標指標陣列
- C陣列和指標陣列指標
- Golang 學習——陣列指標和指標陣列的區別Golang陣列指標
- Go 陣列指標(指向陣列的指標)Go陣列指標
- 7-7 冒泡法排序 (20分)排序
- C語言排序 冒泡 選擇 快排C語言排序
- C語言指標(三):陣列指標和字串指標C語言指標陣列字串
- 陣列指標陣列指標
- 單連結串列的排序(插入,選擇,冒泡)排序
- 資料結構和演算法:03.冒泡、選擇排序資料結構演算法排序
- 七、排序,選擇、冒泡、希爾、歸併、快速排序實現排序
- 基礎排序(冒泡、選擇、插入)學習筆記排序筆記
- 雙指標法指標
- PHP基礎演算法之選擇排序法PHP演算法排序
- 選擇排序和快速排序排序
- 日常學習儲存--陣列和指標陣列指標
- 【C】 28_指標和陣列分析(上)指標陣列
- 【C進階】28、指標和陣列分析指標陣列
- 改進的氣泡排序和選擇排序(雙向冒泡/一次遍歷選出最大和最小的選擇排序)C語言實現排序C語言
- 反射,hashlib模組,正則匹配,冒泡,選擇,插入排序反射排序
- 選擇排序和氣泡排序排序
- 分治法演算法學習(一)——歸併排序、求最大子陣列和演算法排序陣列
- C指標和陣列的關係詳解指標陣列
- C語言指標和陣列筆試題C語言指標陣列筆試
- 二維陣列與指標陣列指標
- 透過指標引用陣列指標陣列
- <二分查詢+雙指標+字首和>解決子陣列和排序後的區間和指標陣列排序
- 常見的三種排序演算法(選擇,冒泡,計數)排序演算法
- Floyd 迴圈檢測演算法(快慢指標法/龜兔指標法)演算法指標
- 要點1:指標、陣列和複合字面量指標陣列