以下代码应该反转数组,但它不起作用。 我找不到这个bug(对不起,但我是一个业余爱好者)。
代码:
int main(void)
{
int ara[] = {10,20,30,40,50,60,70,80,90,100};
int i, j, temp;
for (i=0, j=9; i<10; i++, j--) {
temp = ara[j];
ara[j] = ara[i];
ara[i] = temp;
}
for (i=0; i<10; i++) {
printf("%d\n", ara[i]);
}
return 0;
}
答案 0 :(得分:1)
而不是
for (i=0, j=9; i<10; i++, j--) {
使用
for (i=0, j=9; i<5; i++, j--) { // Note 5 instead of 10
在所有5
对交换后停止迭代。