首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
下列程序的输出结果是( )。 main() { int i=1,j=2,k=3; if(i++==1&&(++j==3||k++==3)) printf(" %d %d %d \n", i, j, k); }
下列程序的输出结果是( )。 main() { int i=1,j=2,k=3; if(i++==1&&(++j==3||k++==3)) printf(" %d %d %d \n", i, j, k); }
admin
2010-05-22
17
问题
下列程序的输出结果是( )。 main() { int i=1,j=2,k=3; if(i++==1&&(++j==3||k++==3)) printf(" %d %d %d \n", i, j, k); }
选项
A、1 2 3
B、2 3 4
C、2 2 3
D、2 3 3
答案
8
解析
本题考查自增运算符“++”,逻辑与运算符“&&”和逻辑或运算符“||”。自增运算符“++”,出现在变量之前(如题中的++n),表示先使变量的值加1,再使用变量的值进行运算:出现在变量之后(如题中的n++),表示先使用变量的值进行运算,再使变量的值加1。当逻辑与运算符“&&”两边的运算对象都为真时,逻辑表达式的值才为真;当逻辑或运算符“||”左边的运算对象为真时,其值就为真,不用计算其右边的运算对象的值。所以根据运算符的优先级,题中应先计算内层括号中的值。++j是先自加后运算,因此运算时j的值等于3,所以表达式++j==3成立,即表达式的值为1;由于1与任何数都为进行或(||)运算,结果都为1,因此k=3;最后计算“&&”之前的表达式,i++是先运算后自加,因此运算时i为1,所以i++==1成立,自加1后i=2。if语句的条件为真即“1”,所以输出i、j、k的值分别是 2, 3, 3。
转载请注明原文地址:https://jikaoti.com/ti/2lI0FFFM
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
下面属于软件设计阶段产生的文档是()。
下面属于白盒测试方法的是()。
有如下语句序列:Dima,bAsIntegerPrintaPrintb执行以上语句序列,下列叙述中错误的是()。
下面能够将某个变量声明为局部变量的是()。
下面变量定义中错误的是
表达式Int(-15.8)+Fix(-15.8)+Int(15.8)+Fix(15.8)的运算结果是()。
设某二叉树的后序序列与中序序列均为ABCDEFGH,则该二叉树的前序序列为()。
一棵二叉树中共有80个叶子结点与70个度为1的结点,则该二叉树中的总结点数为
对建立良好的程序设计风格,下面描述正确的是()。
随机试题
A.管周牙本质B.管间牙本质C.球间牙本质D.前期牙本质E.骨样牙本质刚形成尚未钙化的牙本质是
22岁未婚女性,最近阴道少量出血一周,2天来右下腹疼痛伴恶心,平时月经规律,末次月经45天前,检查右下腹压痛、反跳痛阳性。为诊断输卵管妊娠,以下哪项辅助检查最可靠
怎样对债务清偿能力进行评价?
工程量清单计价的方法有以下()方式。
下列表述中最为正确的是()。
两个同符号的数相加或异符号的数相减,所得结果的符号位SF和进位标志CF进行(2)运算为1时,表示运算的结果产生溢出。
Coketownwasatownofredbrick,orofbrickthatwouldhavebeenredifthesmokeandtheasheshadallowedit;butasmatters
Theteacher,ratherthanthestudents,isresponsibleforthismatter.
Astheplacecircledovertheairport,everyonesensedthatsomethingwaswrong.Theplanewasmovingunsteadilythroughtheair
A、Theylikedlisteningtostoriesmore.B、Theyhadcloserrelationshipswiththeteachers.C、Theydidbetteratwordrecognition
最新回复
(
0
)