冒泡对函数中其他数组的指针数组进行排序(C)

乔尔

我想对每个指针指向另一个数组的指针数组进行冒泡排序功能-在函数内部,并且遇到一个我违反了写入位置的错误(Visual Studio)

PS,我做(*parr)++是因为每个阵列示出了第一值的阵列的不具有第一值,所以我需要开始气泡从所述第二框分选(长度arr[1]和不arr[0]例如)。有人可以给我写信我该如何解决?感谢您的帮助(我需要对原始数组的值而不是数组的指针进行排序)。

int main(void){

    int i = 0;
    int arr0[4] = { 3, 9, 6, 7 };
    int arr1[3] = { 2, 5, 5 };
    int arr2[1] = { 0 };
    int arr3[2] = { 1, 6 };
    int arr4[5] = { 4, 5, 6, 2, 1 };
    int* parr[5] = { arr0, arr1, arr2, arr3, arr4 };
    func1(parr);


    system("PAUSE");
    return (0);
}
void func1(int** parr)
{
    int i;
    int temp;
    int j;
    int k;
    int length;
    for (i = 0; i < 5; i++, (parr)++)
    {
        length = **parr;
        (*parr)++;
        for (j = 0; j < length-1; j++)
        {
            for (k = 0; k < length - j - 1; k++, (*parr)++)
            {
                if ((**parr)>(*(*parr + 1)))
                {
                    temp = **(parr);
                    **(parr) = (*(*parr + 1));
                    (*(*parr + 1)) = temp;
                }
            }
        }


    }


}
用户名

这似乎有效。在func1中,将取消引用用作parr [i] [k]比移动指针更容易。

#include <stdio.h>
#include <string.h>
#include <stdlib.h>

void func1(int** parr);

int main(void){
    int j;
    int arr0[4] = { 3, 9, 6, 7 };
    int arr1[3] = { 2, 5, 5 };
    int arr2[1] = { 0 };
    int arr3[2] = { 1, 6 };
    int arr4[5] = { 4, 5, 6, 2, 1 };
    int* parr[5] = { arr0, arr1, arr2, arr3, arr4 };
    func1(parr);
    for (j = 1; j <= arr0[0]; j++)
    {
        printf ( "arr0[%d] %d\n", j, arr0[j]);
    }
    for (j = 1; j <= arr4[0]; j++)
    {
        printf ( "arr4[%d] %d\n", j, arr4[j]);
    }
    return (0);
}

void func1(int** parr)
{
    int i;
    int temp;
    int j;
    int k;
    int length;
    for (i = 0; i < 5; i++)
    {
        length = **parr;

        for (j = 0; j < length; j++)
        {
            for (k = 1; k < length - j; k++)
            {
                temp = *((*parr)+k);
                if (*((*parr)+k)>*((*parr)+k+1))
                {
                    temp = *((*parr)+k);
                    *((*parr)+k) = *((*parr)+k+1);
                    *((*parr)+k+1) = temp;
                }
            }
        }
        *parr++;// next array
    }
}

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

用C对数组进行冒泡排序

来自分类Dev

在C ++中对指针数组进行排序

来自分类Dev

在C中对char指针数组进行排序

来自分类Dev

我应该使用冒泡排序,插入排序之类的排序算法,还是应该使用c ++中的内置sort()函数对数组进行排序?

来自分类Dev

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

来自分类Dev

冒泡排序不适用于对 C++ 中的动态对象数组进行排序

来自分类Dev

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

来自分类Dev

如何对数组中的对象进行冒泡排序?

来自分类Dev

在Python中按其他数组排序索引对数组进行排序

来自分类Dev

用指针对c中的数组进行排序

来自分类Dev

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

来自分类Dev

冒泡对C中具有空值的数组进行排序

来自分类Dev

C指针数组与其他指针数组的元素

来自分类Dev

带指针的C++冒泡排序函数

来自分类Dev

对整个数组进行冒泡排序

来自分类Dev

(C)从调用其他函数的函数中打印结构数组

来自分类Dev

按其他数组定义的顺序对数组进行排序

来自分类Dev

按其他数组值对数组进行排序

来自分类Dev

按其他数组对数组进行排序?

来自分类Dev

使用其他数组对数组对象进行排序

来自分类Dev

用Javascript中其他数组的值对数组进行排序?

来自分类Dev

根据其他数组中的索引对对象数组进行排序

来自分类Dev

根据JavaScript或jQuery中的其他数组值对数组进行排序

来自分类Dev

按其他数组中的值顺序对数组进行排序

来自分类Dev

基于一个数组对其他数组进行排序 (Obj-C)

来自分类Dev

对2D数组进行冒泡排序时,出现空指针异常

来自分类Dev

C++ 动态对象数组中的冒泡排序

来自分类Dev

C ++基于其他int数组的排序

来自分类Dev

C ++中基于指针的冒泡排序

Related 相关文章

  1. 1

    用C对数组进行冒泡排序

  2. 2

    在C ++中对指针数组进行排序

  3. 3

    在C中对char指针数组进行排序

  4. 4

    我应该使用冒泡排序,插入排序之类的排序算法,还是应该使用c ++中的内置sort()函数对数组进行排序?

  5. 5

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

  6. 6

    冒泡排序不适用于对 C++ 中的动态对象数组进行排序

  7. 7

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

  8. 8

    如何对数组中的对象进行冒泡排序?

  9. 9

    在Python中按其他数组排序索引对数组进行排序

  10. 10

    用指针对c中的数组进行排序

  11. 11

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

  12. 12

    冒泡对C中具有空值的数组进行排序

  13. 13

    C指针数组与其他指针数组的元素

  14. 14

    带指针的C++冒泡排序函数

  15. 15

    对整个数组进行冒泡排序

  16. 16

    (C)从调用其他函数的函数中打印结构数组

  17. 17

    按其他数组定义的顺序对数组进行排序

  18. 18

    按其他数组值对数组进行排序

  19. 19

    按其他数组对数组进行排序?

  20. 20

    使用其他数组对数组对象进行排序

  21. 21

    用Javascript中其他数组的值对数组进行排序?

  22. 22

    根据其他数组中的索引对对象数组进行排序

  23. 23

    根据JavaScript或jQuery中的其他数组值对数组进行排序

  24. 24

    按其他数组中的值顺序对数组进行排序

  25. 25

    基于一个数组对其他数组进行排序 (Obj-C)

  26. 26

    对2D数组进行冒泡排序时,出现空指针异常

  27. 27

    C++ 动态对象数组中的冒泡排序

  28. 28

    C ++基于其他int数组的排序

  29. 29

    C ++中基于指针的冒泡排序

热门标签

归档