#include<iostream>
using namespace std; //其他都理解,就是这里没用指针也可以进行排序和改变实参很不解
void sort(int arr[],int len) { //正常教学里是sort(int *arr,int len),指针可以改变实参,
//这里我把指针去掉,也可以改变下面的排序
for (int i = 0; i < len - 1; i++) { //这里是用函数、指针和数组,使用冒泡排序 实现对整形数组的升序
for (int j = 0; j < len - i - 1; j++) {
if (arr[j] >arr[j + 1]) {
int temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
}
void shy(int* arr, int len) {
for (int i = 0; i < len; i++) {
cout << arr[i] << endl;
}
}
int main() {
int arr[] = {4,3,6,9,1,2,10,8,7,5};
int len = sizeof(arr) / sizeof(arr[0]);
sort(arr, len);
shy(arr, len);
system("pause");
return 0;
}
arr[]是以数组名作为参数传入,实际上传入的是数组的首地址,所以也可以修改实参的值。
#include<iostream>
using namespace std; //其他都理解,就是这里没用指针也可以进行排序和改变实参很不解
void sort(int arr[],int len) //正常教学里是sort(int *arr,int len),指针可以改变实参,
{ //这里我把指针去掉,也可以改变下面的排序
//这里是用函数、指针和数组,使用冒泡排序 实现对整形数组的升序
for (int i = 0; i < len - 1; i++)
{
for (int j = 0; j < len - i - 1; j++)
{
if (arr[j] >arr[j + 1])
{
int temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
}
void shy(int* arr, int len)
{
for (int i = 0; i < len; i++)
{
cout << arr[i] << endl;
}
}
int main() {
int arr[] = {4,3,6,9,1,2,10,8,7,5};
int len = sizeof(arr) / sizeof(arr[0]);
sort(arr, len);
shy(arr, len);
system("pause");
return 0;
}
C和C++完整教程:https://blog.csdn.net/it_xiangqiang/category_10581430.html