#include<stdio.h>
//插入排序,void sortArray(int p[] , int n);void insert(int p[],int a,int b);//选择排序void selectedSort(int p[],int n);void swap(int &p1,int &p2);//预定义#define ArrayCounts 9int main(){ int a[]={1,3,8,2,6,5,7,4,9}; sortArray(a,ArrayCounts); for(int i =0; i<ArrayCounts;i++){ printf(" %d ",a[i]); } printf("\n"); int b[]={1,3,8,2,6,5,7,4,9}; selectedSort(b,ArrayCounts); for(int i =0; i<ArrayCounts;i++){ printf(" %d ",b[i]); } printf("\n"); return 0;}void sortArray(int p[] , int n){ for(int i =1;i<n;i++){ for(int j=0;j<i;j++){//找到需要插入的位置
if(p[i]<p[j]) insert(p,j,i); } }}//插入函数的具体实现
void insert(int p[],int a,int b){ int temp=p[b]; printf("temp:%d\n",temp); while(a<b){ p[b]=p[b-1]; b--; } p[a]=temp;}void selectedSort(int p[],int n){ int index; for(int i=0;i<n;i++){//每次找到最小值的下标
index=i; for(int j=i+1;j<n;j++){ if(p[index]>p[j]) index=j; }//将最小值放在最前面
swap(p[i],p[index]); }}void swap(int &p1,int &p2){ int temp=p1; p1=p2; p2=temp;}