【发布时间】:2021-03-28 17:35:52
【问题描述】:
#include<stdio.h>
int main(void)
{
int array[10] = { 10,2,9,4,5,6,7,8,3,1 };
/*Implementing Bubble Sort */
int temp;
for (int i = 0; i < 9; i++)
{
for (int j = 0; j < 10 - i; j++)
{
if (array[j] > array[j + 1])
{
temp = array[j];
array[j] = array[j + 1];
array[j + 1] = temp;
}
}
}
for (int i = 0; i < 10; i++)
{
printf("%d ", array[i]);
}
}
当我尝试运行程序时,我正在对值进行排序,但一个值有一些垃圾值,并且对话框显示变量周围的堆栈在 VS 2019 中已损坏。在其他一些编译器中,我得到 0 代替10 在编译器中。
【问题讨论】:
-
第 1 步:将其放入调试器并逐行逐行检查以确保其正常工作。
-
是的,我做到了,实际上我试图在内部 for 循环中获取 a[10] 的值,该值没有定义,所以错误来了
-
我们都会犯这样的小错误,所以你能找到它。
标签: arrays c sorting for-loop bubble-sort