问题 单项选择题

以下程序不用第三个变量实现将两个数进行对调的操作,划线处应为( )。
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中。此时完成全部的交换。

选择题
单项选择题