用参数p传送的首地址实现m双精度型数组按降序排序
时间: 2024-01-21 19:19:44 浏览: 56
C#实现对数组进行随机排序类实例
以下是一个实现m双精度型数组按降序排序的示例代码,其中使用了参数p传递的数组首地址:
```c
void sort(double *p, int m){
int i, j;
double temp;
for(i = 0; i < m - 1; i++){
for(j = i + 1; j < m; j++){
if(*(p+i) < *(p+j)){
temp = *(p+i);
*(p+i) = *(p+j);
*(p+j) = temp;
}
}
}
}
```
在这个示例代码中,我们通过指针变量p来访问传递进来的双精度型数组。通过两个嵌套的循环,我们可以对数组进行冒泡排序,实现按降序排列。
当我们调用这个函数时,只需要将数组的首地址传递给参数p即可:
```c
double arr[5] = {3.4, 1.2, 5.6, 2.8, 4.9};
sort(arr, 5);
```
在这个例子中,我们定义了一个包含5个元素的双精度型数组arr,并将它作为参数传递给了sort函数。函数会按照降序对数组进行排序,并将结果存储在原数组中。
阅读全文