A-A+

有以下程序 main() { int p[7]={11 13 14 15 16 17 18}

2022-08-06 06:34:46 问答库 阅读 176 次

问题详情

有以下程序 main() { int p[7]={11,13,14,15,16,17,18},i=0,k=0; while(i<7&&p[i]%2){k=k+p[i];i++;} printf("%dn",k); } 执行后输出结果是
A.58
B.56
C.45
D.24请帮忙给出正确答案和分析,谢谢!

参考答案

正确答案:D
解析:在主函数中首先定义了一个数组p并初始化,在while后面括号里的表达式中,i初值为0,当p[i]为偶数时,P[i]%2等于0,根据“&&”运算符的规则,其表达式为假退出循环,显然当i=2时,p[i]=14为偶数,此时while后面括号里的表达式的值为假,退出循环,此时k=p[0]+p[1],即k=11+13。所以最后输出k为24。

考点:程序