使用VC++6.0打开考生文件夹下的源程序文件1.cpp,该程序运行时有错,请改正程序中的错误,使程序输出的结果为 m=-10 n=-1O p一0 q=-10 z=A 注意:错误的语句在//******error******的下面,修改该语句即可。 试题程序: #include voidmain() { doublem=10: floatn=10: boolp=1; intq=10; charz=’a’: m=-m: //******error****** n=~n; //******error****** P=-P: //******error****** q=~q: z=z-32; cout<<"m="< cout<<"n="< cout<<"p="< cout<<"q="< cout<<"Z="< return; }
参考答案:(1)“n=-n;”。 (2)“p=!p;”。 (3)“q=-q;”。
解析:【解析】由题目要求的运行结果可知,第1个标识和第3处的语句是对变量n和q取反,求一个正数的相反数可以通过算数运算符“-”得到,第1处和第3处的语句应分别改为“n=-n;”和“q=-q;”,即只需要通过负号运算就可以实现。从题目要求输出的结果来分析,第2处的语句是对逻辑变量P取反,对一个逻辑变量求反,应该用取反运算符“!”,第2处的语句应改为“p=!P;”。