编写一个函数,把double类型数组中的数据倒序排列,并在一个简单的程序中测试该函数

编写一个函数,把double类型数组中的数据倒序排列,并在一个简单的程序中测试该函数,第1张

C语言程序:

#include <stdio.h>

//冒泡排序

void sort(double arr[], int n)

{

int i, j

double temp

for(i=0 i<n-1 i++)

for(j=0 j<n-1-i j++)

if(arr[j] < arr[j+1])

{

temp = arr[j]

arr[j] = arr[j+1]

arr[j+1] = temp

}

}

//输出数组元素

void display(double arr[], int n)

{

int i

for(i=0 i<n i++)

printf("%lf  ", arr[i])

printf("\n")

}

//主函数

int main()

{

double arr[] = {49.5, 38.2, 65.1, 97.0, 76.8, 13.4, 27.9, 49.5}

int n = 8

printf("排序前:\n")

display(arr, n)

sort(arr, n)

printf("排序后:\n")

display(arr, n)

return 0

}

运行测试:

public static List getArrayOrder(ArrayList array)

{

List imagesArray = new

ArrayList()

String[] oArray = new

String[array.size()]

//将排列好的数组循环加入到数组LIST中

for (int i = 0i <

oArray.lengthi++)

{

imagesArray.add(oArray[i])

}

//数组LIST倒序

Collections.reverse(imagesArray)

return imagesArray

}

你现在的数组是否是升序的?还是杂乱的?

另外,你倒序是必须要倒序排列数据还是仅仅是倒序输出而已,如果仅仅是输出可以不排序, 从后往前打印就行了。

下面这个例子是将升序数据倒序排列并输出

#include <stdio.h>

#define N 6

int main(void)

{

int num[N] = {1, 2, 3, 4, 5, 6}

int i, temp

for (i = 0i <N / 2i++) { // 将升序数据倒序排列

temp = num[i]

num[i] = num[N - 1 - i]

num[N - 1 - i] = temp

}

for (i = 0i <Ni++) { // 循环输出倒序后的数据

printf("%d\n", num[i])

}

return 0

}


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/11549855.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-16
下一篇 2023-05-16

发表评论

登录后才能评论

评论列表(0条)

保存