问题 单项选择题

以下程序不用第三个变量实现将两个数进行对调的操作,划线处应为( )。 main() {int a,b; scanf(“%d%d”,&a,&b); cin>>a>>b; tout<<“a=”<<a<<“b=”<<b; a=a+b;b=a-b;a=______; cout<<“a=”<<a<<“b=”<<b<<end1; }

A.a-Cb

B.a-b

C.b*a

D.a/b

答案

参考答案:B

解析: 本题思路巧妙,分析时可以发现b=(a+b)-b,则此时b中放的是a,完成交换工作的一半。然后要将 b放到a中,将表达式展开,则为a=(a+b)-a,此时正好把b放到a中。此时完成全部的交换。

问答题
单项选择题