这是在根据黑马C++学习视频之后的案例要求自己写的一个简单程序
程序另外调用了两个函数进行组合一个是sort排序函数,一个是print打印结果函数
以下为函数主题部分
int main_08()
{
int arr[10]={0};
//数据输入
cout << "请输入您的数据(10个):" << endl;
for (int i = 0; i < 10; i++)
{
cin >> arr[i];
}
int len = sizeof(arr) / sizeof(arr[0]);
//数据排序
sort(arr,len);
//数据显示
print(arr, len);
system("pause");
return 0;
}
下方两段为 sort() 和 print()
void sort(int* arr,int len)
{
int temp;
for (int x = 0; x < len - 1; x++)
{
for (int y = 0; y < len - x - 1; y++)
{
if (*arr > *(arr+ 1))
{
temp = *arr;
*arr = *(arr + 1);
*(arr + 1) = temp;
}
arr++;
}
arr -= (len - x - 1);
}
system("pause");
}
void print(int* arr, int len)
{
for (int i = 0; i < len; i++)
{
cout << arr[i] << "\t" << endl;
}
}
两个子函数均是将指针以及数据个数作为参数进行传递
但是在 sort() 中不能理解的是传递进去的 arr 指针不能像 print() 那样使用,这点问题还是未能想明白。
此文章为自己的学习笔记,其他大佬看到的话若是哪里有写的值得优化的地方,请不吝赐教,谢谢。