使用C中的指针按升序对数组进行排序

用户10587042

我正在编写一个程序,该程序创建一个从 1 到 100 的随机数数组,并按升序对它们进行排序。下面是执行此操作的工作代码,但我需要对其进行修改,以便“交换”函数使用指针。对交换函数的调用应如下所示: swap(???,???) 其中两个输入是指针。实现这一目标的最佳方法是什么?

    #include<stdio.h>
    #include<math.h> 

    int main()
    {
       void fillArray(int sizeArray, int array[sizeArray]);
       void printArray(int sizeArray, int array[sizeArray]);
       void sortArray(int sizeArray, int array[sizeArray]);

       int sizeArray;

       printf("\nSize of the array? ");
       scanf("%d", &sizeArray);

       int array[sizeArray];

       fillArray(sizeArray,array);
       sortArray(sizeArray, array);
       printArray(sizeArray, array);
    }

    void fillArray(int sizeArray, int array[sizeArray])
    {
       int increment;

       for(increment=0; increment<sizeArray; increment++)
       {
          array[increment]=rand()%101;
       }
    }

    void sortArray(int sizeArray, int array[sizeArray])
    {
       void swap(int increment2, int increment, int array[]);
       int increment, increment2, temp;

       for (increment=0; increment < sizeArray ; increment++)
       {
          for (increment2=increment+1; increment2 < sizeArray; increment2++)
          {   
             swap(increment2, increment, array);
          }
       }
    }

    void swap(int increment2, int increment, int array[])
    {
       int temp;
       if (array[increment2] < array[increment])
             {
                temp=array[increment];
                array[increment]=array[increment2];
                array[increment2]=temp;
             }
    }

    void printArray(int sizeArray, int array[sizeArray])
    {
       int increment=0;

       printf("\nHere's the sorted array:\n");

       while(increment<21)
       {
          printf("\n    array[%d] is %d", increment, array[increment]);
          increment++;
       }
    }

输出应如下所示:output

isydmr

定义你的swap函数如下:

void swap(int *increment2, int* increment)

修改您调用交换函数的 for 循环:

for (increment=0; increment < sizeArray ; increment++)
{
      for (increment2=increment+1; increment2 < sizeArray; increment2++)
      {   
         swap(array[increment2], array[increment]);
      }
}

然后,修改您的交换功能:

void swap(int *increment2, int* increment)
{
       int temp;
       if (increment2 < increment)
       {
            temp= *increment2;
            *increment2=*increment;
            *increment2=temp;
       }

}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何从PHP中的Key按升序对数组进行排序?

来自分类Dev

以升序对数组进行排序

来自分类Dev

按日期和时间升序对数组进行排序

来自分类Dev

按日期和时间升序对数组进行排序

来自分类Dev

使用指针对数组进行排序-C编程

来自分类Dev

C编程:使用指针对数组进行排序的函数

来自分类Dev

C ++在文本文件中按升序对数字进行排序

来自分类Dev

在C中按升序对链表进行排序

来自分类Dev

用函数对数组进行排序而不使用 C 中的指针是行不通的。为什么?

来自分类Dev

以升序对数组进行排序,并删除Objective-C中的重复值

来自分类Dev

以升序对数组的元素进行排序

来自分类Dev

以升序对数组进行排序-React JS

来自分类Dev

使用快速排序使用指针对数组进行排序

来自分类Dev

如何让我的快速排序算法按升序和降序对数组进行排序?

来自分类Dev

按数字字段按降序或升序对数组Angular 7进行排序

来自分类Dev

使用排序功能按NSDates对数组进行排序

来自分类Dev

对数组C中的元素进行排序

来自分类Dev

按名称对数组中的数组进行排序

来自分类Dev

按值对数组中的数组进行排序

来自分类Dev

按子数组中的值对数组进行排序

来自分类Dev

按子数组中的值对数组进行排序

来自分类Dev

使用javascript中的sortBy按值对哈希升序进行排序

来自分类Dev

VB-如何按升序或降序对数据库中的结果进行排序

来自分类Dev

在结构中按频率对数组中的字母进行排序

来自分类Dev

如何按升序对数值的浮动列表进行排序?

来自分类Dev

在Javascript中按日期对数组进行排序

来自分类Dev

Javascript在Oracle中按顺序对数组进行排序

来自分类Dev

在python中按行对数组进行排序

来自分类Dev

按日期对数组中的对象进行排序

Related 相关文章

  1. 1

    如何从PHP中的Key按升序对数组进行排序?

  2. 2

    以升序对数组进行排序

  3. 3

    按日期和时间升序对数组进行排序

  4. 4

    按日期和时间升序对数组进行排序

  5. 5

    使用指针对数组进行排序-C编程

  6. 6

    C编程:使用指针对数组进行排序的函数

  7. 7

    C ++在文本文件中按升序对数字进行排序

  8. 8

    在C中按升序对链表进行排序

  9. 9

    用函数对数组进行排序而不使用 C 中的指针是行不通的。为什么?

  10. 10

    以升序对数组进行排序,并删除Objective-C中的重复值

  11. 11

    以升序对数组的元素进行排序

  12. 12

    以升序对数组进行排序-React JS

  13. 13

    使用快速排序使用指针对数组进行排序

  14. 14

    如何让我的快速排序算法按升序和降序对数组进行排序?

  15. 15

    按数字字段按降序或升序对数组Angular 7进行排序

  16. 16

    使用排序功能按NSDates对数组进行排序

  17. 17

    对数组C中的元素进行排序

  18. 18

    按名称对数组中的数组进行排序

  19. 19

    按值对数组中的数组进行排序

  20. 20

    按子数组中的值对数组进行排序

  21. 21

    按子数组中的值对数组进行排序

  22. 22

    使用javascript中的sortBy按值对哈希升序进行排序

  23. 23

    VB-如何按升序或降序对数据库中的结果进行排序

  24. 24

    在结构中按频率对数组中的字母进行排序

  25. 25

    如何按升序对数值的浮动列表进行排序?

  26. 26

    在Javascript中按日期对数组进行排序

  27. 27

    Javascript在Oracle中按顺序对数组进行排序

  28. 28

    在python中按行对数组进行排序

  29. 29

    按日期对数组中的对象进行排序

热门标签

归档