问题 单项选择题

有以下程序
#include"iostream.h"
void main( )

int i=1,j=1,k=2;
if((j++||k++)&&i++)
cout<<i<<","<<j<<","<<k;
cout<<endl;

执行后输出结果是

A.1,1,2

B.2,2,l

C.2,2,2

D.2,2,3

答案

参考答案:C

解析:[命题目的] 考查C++语言中“||”和“&&”运算符。
[解题要点] 该题目的关键是要搞清楚“||”和“&&”两个逻辑运算符的运算功能。运算符“||”和“&&”是双目运算符,要求有两个运算量。且规定逻辑与运算中,只有前面运算量的值为真时,才需要判别后面的值。只要前面运算量为假,就不必判别后的值。而逻辑或则为只要前面的运算量为真,就不必判别后的值;只有前为假,才判别后。本题中j++值为真,不进行k++的运算,所以k的值保持不变。
[考点链接] 注意按位与和按位或的用法。

选择题
单项选择题 A型题