#include <iostream>
using namespace std;
//插入排序法
void insertSortMethod(int intArr[],int arrLen);
void printArrInfo(int intArr[],int arrLen);
int main()
{
int arr[] = { 1,3,5,2,4,7,9,6,8 };
int len = sizeof(arr) / sizeof(int);
insertSortMethod(arr,len);
printArrInfo(arr,len);
system("pause");
return 0;
}
//插入排序法
void insertSortMethod(int intArr[],int arrLen)
{
int start = 0;
for (int i = 0; i < arrLen-1; i++)
{
for (int j = i + 1; j > start; j--)
{
if (intArr[j - 1] > intArr[j])
{
int temp;
temp = intArr[j - 1];
intArr[j - 1] = intArr[j];
intArr[j] = temp;
}
}
}
}
void printArrInfo(int intArr[],int arrLen)
{
for (int i = 0; i < arrLen; i++)
{
cout << intArr[i] << " ";
}
cout << endl;
}
注意 实现方法的时候,很自然的想到在方法体中实现得到数组长度,即int len = sizeof(intArr)/sizeof(int),实际上在调用函数的时候,传递的是数组的首地址,这和我们在main方法中定义赋值一个数组用此方法得到数组长度是不一样的。所以在实现方法的时候,将数组长度作为一个函数参数传入进去
来源:https://www.cnblogs.com/littlelittleprince/p/12289882.html