使用VC6打开考生文件夹下的源程序文件modi1.cpp,该程序运行时有错误,请补充程序中的丢失部分,使得程序运行。可以在修改处增加或者删除一条语句。 本程序完成以下功能: (1)获得输入的两个数字x1,x2(例如x1=4,x2=2);

admin2018-10-23  22

问题 使用VC6打开考生文件夹下的源程序文件modi1.cpp,该程序运行时有错误,请补充程序中的丢失部分,使得程序运行。可以在修改处增加或者删除一条语句。
    本程序完成以下功能:
    (1)获得输入的两个数字x1,x2(例如x1=4,x2=2);
    (2)输出两个中较小的一个(例如输出2);
    (3)计算x1/x2如果x2等于0,返回-1(输出结果2);
    (4)输出x1+x2的结果(输出结果6);
    (5)输出x1+1的结果(输出结果5);
    (6)输出x2-1的结果(输出结果1)。
    注意:不要改动main函数,不能增行或删行,也不能更改程序的结构,错误的语句在//******error******的下面。
1 #include<iostream.h>
2  void main()
3  {
4  int x1;
5  int x2;
6   int x3;
7   cout<<’’please input two number:’’<<end1;
8   cin>>x1>>x2;
9  //********error********
10  x3=(x1>x2)?x1:x2;
11  cout<<’’Min  number  is  :’’<<x3<<end1;
12  //计算x1/x2如果x2等于0,返回-1
13  //********error********
14    x3=(x2)?x1\x2:-1;
15    cout<<’’x1/x2=  ’’<<x3<<end1;
16    //********error********
17    x3=  (--x1)  +  (x2++);
18    cout<<’’x1+x2=  ’’<<x3<<end1;
19    cout<<’’x1+1=  ’’<<x1<<end1;
20    cout<<’’x2-1=  ’’<<x2<<end1;
21    return;
22  }

选项

答案(1)x3=(x1<x2)?x1:x2; (2)x3=(x2)?x1/x2:-1; (3)x3=(x1++)+(x2--);

解析 本题首先求输出两个数字中的最小值,然后计算两个数相除的值,然后求得第一个数与第二个数的和,最后输出“x1+1”和“x2-1”的值。解题思路主要是要从main()主函数入手,依次完成题干中要求的各个要求。
     (1)第1个标识下“x3=(x1>x2)?x1:x2;”语句是判断x1与x2其中哪个相对较小,并将其赋值给x3。条件运算符的格式:表达式1?表达式2:表达式3。执行顺序是先求解表达式1,若非则求解表达式3,此时表达式3的值就作为整个条件表达式值。所以求x1和x2中较小的一个,如果x1<x2为真,那么x1的值赋给x3,否则x2的值赋给x3,即第1个标识下为“x3=(x1<x2)?x1:x2;”。
    (2)同理,第2个标识下计算x1/x2如果x2等于0,返回-1。即“x3=(x2)?x1/x2:-1;”。
    (3)题干中求x1+1,而-x1是x1-1,所以改为x1++。同理X2++改为x2-。即“x3=(x1++)+(x2-);”。
转载请注明原文地址:https://kaotiyun.com/show/AwAp777K
0

最新回复(0)