|
|
发表于 2022-3-25 16:11:25
From FishC Mobile
|
显示全部楼层
- #include <stdio.h>
- void sortArrayByPointer(size_t N, int *a, int *b){
- // 先拷贝,为了不改变数组a
- for(int i = 0; i < N; i++) *(b+i) = *(a+i);
-
- int temp;
- // 数组b 冒泡排序
- for(int i = 0; i < N-1; i++)
- for(int j = i+1; j < N; j++)
- if(*(b+i) < *(b+j)){
- temp = *(b+i);
- *(b+i) = *(b+j);
- *(b+j) = temp;
- }
- }
- int main() {
- // 定义
- int a[10] = {12, 5, 13, 25, 21, 46, 34, 37, 19, 2};
- int b[10];
-
- // 排序 + 赋值数组b
- sortArrayByPointer(10, a, b);
-
- // 打印数组b
- for(int i = 0; i < 10; i++)
- printf("%d ", *(b+i));
-
- return 0;
- }
复制代码 |
|