Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby-on-rails-4/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 我似乎无法调试我的代码,在尝试调试时for循环将我踢出_C++ - Fatal编程技术网

C++ 我似乎无法调试我的代码,在尝试调试时for循环将我踢出

C++ 我似乎无法调试我的代码,在尝试调试时for循环将我踢出,c++,C++,问题在于您在此处使用的条件: #include <stdio.h> #include <math.h> void bubblesort(int a[], int n) { for (int i=0; i<1-n; i++) { for (int j=i+1; j<1-i-n; j++) { int temp =a[j]; a[j]=a[i];

问题在于您在此处使用的条件:

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

void bubblesort(int a[], int n)
{

    for (int i=0; i<1-n; i++)
    {

        for (int j=i+1; j<1-i-n; j++)
        {

            int temp =a[j];
            a[j]=a[i];
            a[i]=temp;
        }
    }
}

void printArray(int arr[], int n)
{

    int k;
    for (k=0; k < n; k++)
        printf("%d ", arr[k]);
    printf("\n");
}

/* Driver program to test insertion sort */

int main()
{

    int arr1[6] = {12, 11, 13, 5, 6, 10};
    int x = sizeof(arr1)/sizeof(arr1[0]);

    bubblesort(arr1, x);
    printArray(arr1, x);

    return 0;
}
类似地,这里使用n-i-1

除此之外,从一个好的资源验证您是否正确地实现了它


请参见:

您可以调试代码。在调试器中观察表达式1-n的值。您已成功发现错误在于循环将您踢出。
for (int i=0; i<1-n; i++)
for (int j=i+1; j<1-i-n; j++)
for (int i=0; i<n-1; i++)
              //~~~~~ -> should be n-1 not 1-n
{

    for (int j = 0; j < n-i-1; j++)
             //~~~~~~~~~~~~ the bubble sort goes like above, 
             //you are attempting insertion sort
    {
        if (a[j] > a[j+1]) {  // you're missing if condition
        int temp =a[j];
        a[j]=a[j+1];
        a[j+1]=temp;
        }
    }
}