C语言程序设计:函数的功能是对参数p传送的首地址,n为元素个数得双精度型数组按降序排序
时间: 2024-01-21 11:17:50 浏览: 75
以下是一个C语言函数,能够实现对参数p传送的首地址,n为元素个数得双精度型数组按降序排序:
```c
void descending_sort(double *p, int n)
{
int i, j;
double temp;
for(i = 0; i < n-1; i++)
{
for(j = i+1; j < n; j++)
{
if(*(p+i) < *(p+j))
{
temp = *(p+i);
*(p+i) = *(p+j);
*(p+j) = temp;
}
}
}
}
```
使用方法如下:
```c
#include <stdio.h>
void descending_sort(double *p, int n);
int main()
{
double arr[] = {3.5, 2.8, 1.2, 4.7, 0.9};
int len = sizeof(arr) / sizeof(double);
printf("Original array:\n");
for(int i = 0; i < len; i++)
{
printf("%.2lf ", arr[i]);
}
printf("\n");
descending_sort(arr, len);
printf("Descending sorted array:\n");
for(int i = 0; i < len; i++)
{
printf("%.2lf ", arr[i]);
}
printf("\n");
return 0;
}
void descending_sort(double *p, int n)
{
int i, j;
double temp;
for(i = 0; i < n-1; i++)
{
for(j = i+1; j < n; j++)
{
if(*(p+i) < *(p+j))
{
temp = *(p+i);
*(p+i) = *(p+j);
*(p+j) = temp;
}
}
}
}
```
输出结果如下:
```
Original array:
3.50 2.80 1.20 4.70 0.90
Descending sorted array:
4.70 3.50 2.80 1.20 0.90
```
阅读全文