C数组反转,找不到bug

时间:2017-05-14 09:28:37

标签: c

以下代码应该反转数组,但它不起作用。 我找不到这个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;
}

1 个答案:

答案 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交换后停止迭代。