麻烦讲讲这题怎么做啊
main( )
{
int p[7]={11,13,14,15,16,17,18}, i=0,k=0;
while(i<7&&p[i]%3)
{
k =k+ p[i]; i++;
}
printf("%d\n", k);
}
执行后输出结果是( ) (2分)
A.58
B.53
C.38
D.24
[解决办法]
while(i<7&&p[i]%3)
i<7以保证不越界,配合i++,为遍历数组。
p[i]%3相当于(p[i] % 3 != 0),也就是p[i]不能被3整除。
整个条件含义就是:找到第一个能被3整除的数据,对它前面的数据进行处理
k = k + p[i];
说明处理方式为求和。
所以,结果应为:
11 + 13 + 14
[解决办法]
到15%3 == 0所以到15的时候不满足了,结果是11+13+14