niusouti.com

下列赋值语句中哪两个是合法的(写出合法赋值语句的编号)。①sq=sh; ②sh=tr; ③tr=sq; ④sq=tr; ⑤sh=sq;

题目

下列赋值语句中哪两个是合法的(写出合法赋值语句的编号)。

①sq=sh; ②sh=tr; ③tr=sq; ④sq=tr; ⑤sh=sq;


相似考题
更多“下列赋值语句中哪两个是合法的(写出合法赋值语句的编号)。 ①sq=sh;②sh=tr;③tr=sq;④sq=tr;⑤sh=sq; ”相关问题
  • 第1题:

    设数组data[O…m]作为循环队列sq的存储空间,front为队头指针,rear为队尾指针,则执行出队操作的语句为

    A.sq↑.front:=sq↑.front+1;

    B.sq↑.front:=(sq↑.front+1)%maxsize;

    C.sq↑.rear:=(sq↑.rear+1)%maxsize;

    D.sq↑.front:=(sq↑.front+1)%(maxsize+1);


    正确答案:B
    解析:循环队列采用的方法是:假设向量sq↑.data[maxsize]是一个首尾相接的圆环,即sq↑.data[0]接在sq↑.data[maxsize-1]之后,我们将这种意义下的向量称循环向量,并将循环向量中的队列称为循环队列。若当前尾指针等于向量的上界,则再做人队列操作时,令尾指针等于向量的下界,这样就利用到已被删除的元素空间,克服假上溢现象。因此入队操作时,在循环意义下的尾指针加1操作可描述为:if(sq↑. rear>=maxsize)sq↑.near:=0;else sq↑.rear++;如果利用“模运算”,上述循环意义下的尾指针加1操作,可以更简洁地描述为:sq↑.rear=(sq↑.rear+1)% maxsize。同样,出队操作时,在循环意义下的头指针加1操作,也可利用“模运算”来实现:sq↑. front:=(sp↑.front+1)% maxsize。

  • 第2题:

    设数组data[0…m]作为循环队列sq的存储空间,front为队头指针,rear为队尾指针,则执行出队操作的语句为

    A.sq↑.front:=sq↑.front+1;

    B.sq↑.front:=(sq↑.front+1)%maxsize;

    C.sq↑.rear:=(sq↑.rear+1)%maxsize;

    D.sq↑.front:=(sq↑.front+1)%(maxsize+1);


    正确答案:B
    解析:循环队列采用的方法是:假设向量sq↑.data[maxsize]是一个首尾相接的圆环,即sq↑.data[0]接在sq↑.data[maxsize-1]之后,我们将这种意义下的向量称循环向量,并将循环向量中的队列称为循环队列。若当前尾指针等于向量的上界,则再做入队列操作时,令尾指针等于向量的下界,这样就利用到已被删除的元素空间,克服假上滥现象。因此入队操作时,在循环意义下的尾指针加1操作可描述为:if(sq↑.rear>=maxsize)sq↑.near:=0;elsesq↑.rear++;如果利用“模运算”,上述循环意义下的尾指针加1操作,可以更简洁地描述为:sq↑.rear=(sq↑.rear+1)%maxsize。同样,出队操作时,在循环意义下的头指针加1操作,也可利用“模运算”来实现:sq↑.front:=(sq↑.front+1)%maxsize。

  • 第3题:

    试题五(共 15 分)

    阅读下列说明、图和C++代码,回答问题1 至问题3,将解答写在答题纸的对应栏内。

    [说明]

    已知四个类之间的关系如图 5-1 所示,分别对每个类的方法进行编号,例如 Shape的 perimeter()方法为 1 号,表示为“1:perimeter()” ,Rectangle 类的 perimeter()为2号,表示为“2:perimeter()” ,依此类推,其中,每个类的 perimeter方法都为虚函数且方法签名相同。

    [C++代码]

    Triangle *tr = new Triangle();

    Square *sq = new Square();

    Shape *sh = tr;

    [问题 1] 关于上述 C++代码中 sh 和 tr 的以下叙述中,哪两个是正确的(写出编号) 。

    ① sh 和 tr 分别引用同一个对象;

    ② sh 和 tr 分别引用同一类型的不同的对象;

    ③ sh 和 tr 分别引用不同类型的不同对象;

    ④ sh 和 tr 分别引用同一个对象的不同拷贝;

    ⑤ sh 和 tr 所引用的内存空间是相同的。

    [问题 2] 写出下面消息对应的方法编号(如果该消息错误或者没有对应的方法调用,请

    填写“无” ) 。

    tr->height() (1)

    sh->perimeter() (2)

    sq->height() (3)

    sq->perimeter() (4)

    sh->height() (5)

    tr->perimeter() (6)

    [问题 3] 不考虑内存释放问题,下列赋值语句中哪两个是合法的(写出合法赋值语句的

    编号) 。

    ① sq = sh; ② sh = tr; ③ tr = sq; ④ sq = tr; ⑤ sh = sq;


    正确答案:


  • 第4题:

    阅读下列说明、图和Java代码,回答问题1至问题3。

    【说明】

    已知四个类之间的关系如图2-4所示,分别对每个类的方法进行编号,例如Shape的perimeter()为1号,表示为1:perimeter(),Rectangle类的perimeter()为2号,表示为 2:perimeter(),依此类推,其中,每个类的perimeter方法签名相同。

    【Java代码】

    Triangle tr=new Triangle();

    Square sq=new Square();

    Shape sh=tr;

    关于上述Java代码中sh和tr的以下叙述中,哪两个是正确的(写出编号)。

    ①sh和tr分别引用同一个对象;

    ②sh和tr分别引用同一类型的不同的对象:

    ③sh和tr分别引用不同类型的不同对象:

    ④sh和tr分别引用同一个对象的不同拷贝;

    ⑤sh和tr所引用的内存空间是相同的。


    正确答案:① ⑤
    ① ⑤

  • 第5题:

    试题七(共 15 分)

    阅读下列说明、图和Java 代码,回答问题1 至问题3,将解答写在答题纸的对应栏内。

    [说明]

    已知四个类之间的关系如图 7-1 所示,分别对每个类的方法进行编号,例如 Shape的 perimeter()为 1 号,表示为“1:perimeter()” ,Rectangle 类的 perimeter()为 2 号,表示为“2:perimeter()” ,依此类推,其中,每个类的 perimeter方法签名相同。

    [Java 代码]

    Triangle tr = new Triangle();

    Square sq = new Square();

    Shape sh = tr;

    [问题 1] 关于上述 Java代码中 sh 和 tr 的以下叙述中,哪两个是正确的(写出编号) 。

    ① sh 和 tr 分别引用同一个对象;

    ② sh 和 tr 分别引用同一类型的不同的对象;

    ③ sh 和 tr 分别引用不同类型的不同对象;

    ④ sh 和 tr 分别引用同一个对象的不同拷贝;

    ⑤ sh 和 tr 所引用的内存空间是相同的。

    [问题 2] 写出下面消息对应的方法编号(如果该消息错误或者没有对应的方法调用,请

    填写“无” ) 。

    tr.height() (1)

    sh.perimeter() (2)

    sq.height() (3)

    sq.perimeter() (4)

    sh.height() (5)

    tr.perimeter() (6)

    [问题 3] 下列赋值语句中哪两个是合法的(写出合法赋值语句的编号) 。

    ① sq = sh; ② sh = tr; ③ tr = sq; ④ sq = tr; ⑤ sh = sq;


    正确答案: