有谁能解释这个程序?

时间:2011-02-08 11:41:00

标签: c

int array[2][2] = {0, 1, 2, 3};
int i;
int sum = 0;

for (i =0; i < 4; ++i)
{

    int x, y;

    x = i % 2;

    if (x)
    {
        y = 0;
        }
    else
    {
        y = 1;
        }
    sum += array[x][y];
}

printf("%d\n", sum);

1 个答案:

答案 0 :(得分:4)

它足够短,你可以自己走过它(因为这是家庭作业)并自己在纸上运行每一行。如果有任何您无法弄清楚的行,请提出更具体的问题。只需使用铅笔,制作一个框来显示x,y,i,sum和数组的所有4个元素的值。然后,在检查代码行时,通过更改这些框中的值,您将看到到底发生了什么。你应该知道的一件事是“if(x)”会在x为1时将x视为真。