【发布时间】:2014-08-16 12:59:24
【问题描述】:
我正在尝试对数组进行排序并删除重复项。这是我在 c 中使用的函数 此代码没有错误,但由于输出数组中有 0,所以给了我错误的输出。而原来没有零
sort(int tab[], int k)
{
int temp,i,j,m;
for(i=0; i<k; i++){
for(j =i+1; j<k; j++)
{
if(tab[i] > tab[j])
{
int temp = tab[i];
tab[i]=tab[j];
tab[j]=temp;
}
else if (tab[i] == tab[j]){
for (m =j; m<k; m++){
tab[m] = tab[m+1];
}
}
}
}
}
此代码中的逻辑错误是什么?我的输出中出现了 0
【问题讨论】:
-
首先格式化/正确缩进这个邪恶的生物
-
您发布的代码不会产生任何输出。请提供一个清晰的示例,说明您的输出是如何产生的、您期望的输出以及您实际看到的输出。
-
这类问题在 Stackoverflow 上是题外话。您应该自己调试,而不仅仅是包含一个代码转储和一个简短的句子,要求其他人找到您的错误。