該函數計算最大可能數x,使得所有數1,... x-1都在數組中,例如{1,3,2,5} - > 4.函數不適用於帶有零的數組,因爲它總是返回1.爲什麼?數組的子序列
int array(int* t, int r)
{
for (int x = 0; x < r; x++)
{
for (int y = 0; y < r-1; y++)
{
if (t[y] > t[y+1])
{
int temp = t[y+1];
t[y+1] = t[y];
t[y] = temp;
}
}
}
for (int i = 0; i != r; i++)
{
if (t[i] != (i + 1))
{
return i+1;
}
}
return r+1;
}
我不完全瞭解您的要求。 'Z'和'x'之間的關係是什麼? –
錯字。我的錯。 – vforbiedronka
解決此類問題的正確工具是您的調試器。在*堆棧溢出問題之前,您應該逐行執行您的代碼。如需更多幫助,請閱讀[如何調試小程序(由Eric Lippert撰寫)](https://ericlippert.com/2014/03/05/how-to-debug-small-programs/)。至少,您應該\編輯您的問題,以包含一個[最小,完整和可驗證](http://stackoverflow.com/help/mcve)示例,該示例再現了您的問題,以及您在調試器。 –