更多“设int x[ ]={2,4,6,8},y,*p=&x[1];则执行语句y=(*--p)++;后数组元素x[0]的值为 ______。A.2B. ”相关问题
  • 第1题:

    设x、y、t均为血型变量,则执行语句x=y=3;t=++x||++y;后,y的值为______。

    A.不定值

    B.4

    C.3

    D.1


    正确答案:C
    解析:因为x的值为3,表达式首先去求++x的值,由于++x的逻辑值为1,无论表达式++y为何值,逻辑表达式的运算结果总是1,因此跳过++y不进行求值。

  • 第2题:

    有如下程序:include using namespace std;class point{int x, y;public:point( int v

    有如下程序:#include <iostream>using namespace std;class point{ int x, y;public: point( int vx, int vy ) { X=vx; y=vy; } point() { x=0; y=0; } point operator+ ( point p1 ) { point p; int px = x + p1.x; int py = y+ p1.y; return point( px, py ); } point operator-( point p1 { point p; int px = x - p1.x; int py = y - p1.y; return point( px, py ); } void print() { cout<<x<<","<<y<<end1; }};int main(){ point p1( 10, 10 ), p2( 20, 20 ); p1 = p1 + p2; p1.print(); return ();}执行后的输出结果是( )。

    A.10, 10

    B.20, 20

    C.10, 20

    D.30, 30


    正确答案:D

  • 第3题:

    有如下程序:include using namespace std;class point{intx,y;public:point( int vx,

    有如下程序:#include <iostream>using namespace std;class point{ int x, y;public: point( int vx, int vy ) { x = vx; y = vy; } point ( ) x = 0; y= 0; } point operator+( point p1 ) { point p; int px = x+ p1.x; int py = y + p1.y; return point( px, py ); point operator-( point p1 ) { point p; int px = x -p1.x; int py = y - p1.y; return point ( px, py ); } void print() { cout<<x<<" , "<<y<<end1; }};int main (){ point p1(10, 10 ), p2( 20, 20 ); p1 = p1 - p2; p1.print (); return 0;} 执行后的输出结果是

    A.10,10

    B.20,20

    C.10,20

    D.30,30


    正确答案:D
    解析:本题主要考查C++中运算符重载的机制与实现。运算符重载函数一般分为成员函数形式和友元函数形式,这两种形式都可以访问类中的私有成员。本题中的运算符重载形式为成员函数形式。程序在类point中声明了私有数据成员int x和 int y,并定义了两种形式的构造函数以完成对对象的初始化;之后,程序对运算符“+”进行了重载,另其输入参数为类point的对象,输出为操作符“+”右侧该对象的私有数据成员x和y与操作符“+”左侧同类型对象的私有数据成员x和y的加和:print()函数则输出对象中数据成员的值。程序main()函数中,实例化了类point的两个对,象p1和p2,并完成对对象的初始化.在语句“p1= p1+p2;”中,由于操作符“+”左右两端的操作数为point类的对象,复合类point定义中的操作符“+”的重载函数,因此程序将调用重载后的操作符函数,并返回两point对象数据成员的加和值,覆盖对象p1的数据成员.因此print()函数输出对象p1的数据成员值己应该为:x=10+20=30,y=10+20=30

  • 第4题:

    有如下程序: include using namespace std; class point {int x,y; public:point( i

    有如下程序: #include <iostream> using namespace std; class point { int x, y; public: point( int vx, int vy ) { x = vx; y = vy; } point ( ) { x = 0; y = 0; } point operator+( point pl ) { point p; int px = x + p1.x; int py = y + p1.y; return point( px, py ); } point operator-( point p1 ) { point p; int px = x - p1.x; int py = y - p1.y; return point( px, py ); } void print() { cout<<x<<", "<<y<<end1; } }; int main () { point pl ( 10, 10 ), p2 ( 20, 20 ); p1 = p1 + p2; p1.print (); return 0; } 执行后的输出结果是( )。

    A.10,10

    B.20,20

    C.10,20

    D.30,30


    正确答案:D
    解析:本题主要考察C++中运算符重载的机制与实现。运算符重载函数一般分为成员函数形式和友元函数形式,这两种形式都可以访问类中的私有成员。本题中的运算符重载形式为成员函数形式。程序在类point中声明了私有数据成员intx和inty,并定义了两种形式的构造函数以完成对对象的初始化:之后,程序对运算符“+”进行了重载,令其输入参数为类point的对象,输出为操作符“+”右侧该对象的私有数据成员x和y与操作符“+”左侧同类型对象的私有数据成员x和y的两数之和;print()函数则输出对象中数据成员的值。主函数中,实例化了类point的两个对象p1和p2,并完成对对象的初始化。在语句“p1=p1+p2;”中,由于操作符“+”左右两端的操作数为point类的对象,复合类point定义中的操作符“+”的重载函数,因此程序将调用重载后的操作符函数,并返回两point对象数据成员的加和值,覆盖对象p1的数据成员。因此print()函数输出对象p1的数据成员值应该为:x=10+20=30,y=10+20=30。

  • 第5题:

    有如下程序:includeusing namespace std;class point{int x,y;public:point(int vx,i

    有如下程序: #include<iostream> using namespace std; class point { int x,y; public: point(int vx,int vy) { x=vx; y=vy; } point() { x=0; y=0; } point operator+(point p1) { point p; int px=x+p1.x; int py=y+p1.y; return point(px,py); } point operator-(point p1) { point p; int px=x-p1.x; int py=y-p1.y; return point(px,py); } void print() { cout<<x<<","<<y<<end1; } }; int main() { point p1(10,10),p2(20,20); p1=p1+p2; p1.print(); retrun 0; } 执行后的输出结果是

    A.10,10

    B.20,20

    C.10,20

    D.30,30


    正确答案:D
    解析:本题主要考查C++中运算符重载的机制与实现。运算符重载函数一般分为成员函数形式和友元函数形式,这两种形式都可以访问类中的私有成员。本题中的运算符重载形式为成员函数形式。程序在类point中声明了私有数据成员intx和inty,并定义了两种形式的构造函数以完成对对象的初始化;之后,程序对运算符“+”进行了重载,另其输入参数为类point的对象,输出为操作符“+”右侧该对象的私有数据成员x和y与操作符“+”左侧同类型对象的私有数据成员x和y的加和:print()函数则输出对象中数据成员的值。程序main()函数中,实例化了类point的两个对象p1和p2,并完成对对象的初始化。在语句“p1=p1+p2;”中,由于操作符“+”左右两端的操作数为point类的对象,复合类point定义中的操作符“+”的重载函数,因此程序将调用重载后的操作符函数,并返回两point对象数据成员的加和值,覆盖对象p1的数据成员。因此print()函数输出对象p1的数据成员值应该为:x=10+20=30,y=10+20=30

  • 第6题:

    设X、y、Z、t均为int型变量,则执行以下语句后,t的值为( ) x=y=z=1;t=++x||++y&&++z;

    A.不定值

    B.2

    C.l

    D.0


    正确答案:C
    语句序列“x=y=z=l;t=++x||++y&&++z;”使变量x的值为1,变量t是赋一个逻辑表达式的值。在C语言中,由逻辑与和逻辑或构成的逻辑表达式有特别的计算规则,顺序计算各逻辑子表达式,并当一旦能得到逻辑表达式的结果时,就立即结束逻辑表达式的计算,不再计算后继逻辑子表达式。本题的逻辑表达式是两个运算分量的逻辑或,而且左运算分量++X的值为非0,立即得到逻辑或运算的结果为1,并将1赋给变量t,所以变量t的值为1。正确解答为C。

  • 第7题:

    执行下列程序段后,变量y的值为( ) int x[]={1,2,3,4},y,*p=&x[1]; y=(*--P)++;

    A.1

    B.2

    C.3

    D.4


    正确答案:A
    从数据定义语句中可以得出下列结论:指针变量P指向的数组元素是x[1]。再来分析赋值句的右边表达式“(*--p)++”,其中的“--”优先于“*”先计算“--p”,使得p指向数组元素x[0];所以“(*--p)”就是数组元素a[0],再计算其后的“++”,由于“++”是后缀,所以表达式的值就是数组元素x[0]的值,为1,然后再对数组元素x[0]加1。因此变量y的值是1。本题答案应选A。

  • 第8题:

    设随机变量X~N(0,σ^2),Y~N(0,4σ^2),且P(X≤1,y≤-2)=,则P(X>1,Y>-2)=_______.


    答案:
    解析:

  • 第9题:

    有定义:int x,y=10,*p=&y;, 则能使得x的值也等于10的语句是()。

    • A、x=p;
    • B、x=&p;
    • C、x=&y;
    • D、x=*p;

    正确答案:D

  • 第10题:

    有以下说明语句:struct point{int x;int y;}p;则正确的赋值语句是()

    • A、point.x=1;point.y=2;
    • B、point={1,2};
    • C、p.x=1;p.y=2;
    • D、p={1,2};

    正确答案:C

  • 第11题:

    执行以下程序后,y的值是() main( ) { int a[]={2,4,6,8,10}; int y=1,x,*p; p=&a[1]; for(x=0;x<3;x++) y + = * (p + x); printf(""%d/n"",y); }

    • A、17
    • B、18
    • C、19
    • D、20

    正确答案:C

  • 第12题:

    单选题
    执行以下程序后,y的值是() main( ) { int a[]={2,4,6,8,10}; int y=1,x,*p; p=&a[1]; for(x=0;x<3;x++) y + = * (p + x); printf(""%d/n"",y); }
    A

    17

    B

    18

    C

    19

    D

    20


    正确答案: A
    解析: 暂无解析

  • 第13题:

    设x、y、t均为int型变量,则执行语句:x=y=3;t=++x||++y;后,y的值为( )。

    A.不定值

    B.4

    C.3

    D.1


    正确答案:C
    解析:在||运算中,当第一个表达式的值为真时,第二个表达式将不再运算。由于在表达式t=++t||++y;中,t的值为非0,即第一个表达式的值为真,第二个表达式将不再运算,所以y的值没有变化,仍然为3。所以,4个选项中选项C符合题意。

  • 第14题:

    设x,y,z均为整型变量,现有如下语句x=y=z=1;(++x||(++y&&++z));,则执行这个语句后y的值为A.2 B.1 C.0 D.不定值


    正确答案:B
    本题考查逻辑表达式“||”的求解过程。
    在逻辑表达式的求解中,并不是所有的逻辑运算符都被执行,只是必须执行该逻辑表达式时才求出表达式的解。“||”为逻辑或运算,只有当该运算符左右两边的表达式都为假时(值为0),该逻辑运算的值才为假。只要有一个表达式为真,则该逻辑运算的值就为真。
    进行逻辑或运算时,只要运算符左边的表达式为真(值不为0),则不用运行运算符右边的表达式。
    题目中,初始时x、y、z的值都为1,运算符“||”左边为表达式++x,右边为表达式(++y&&++z)。程序运行时先判断表达式++x的值,该值为2,故该逻辑运算值为真,不需要执行运算符右边的表达式。

  • 第15题:

    执行以下程序后,y的值是 ( ) main( ) { int a [ ]={2,4,6,8,10); int y=1,x, *p; p=&a[1]; for(x=0;x<3; x + +) y + =* (p + x); printf("%d\n",y); }

    A.17

    B.18

    C.19

    D.20


    正确答案:C

  • 第16题:

    设x和y均为int型变量,则执行下面的循环后,y值为()。include void main(){int x, y;f

    设x和y均为int型变量,则执行下面的循环后,y值为( )。#include <iostream.h>void main(){int x, y;for(y= 1,x= 1 ;y<=50;y++){ if(x>=10) }break;if (x%2==1){ x+=5; continue;} x-=3;} cout<<y;

    A.2

    B.4

    C.6

    D.8


    正确答案:C

  • 第17题:

    执行以下程序后的输出结果为( )。includeclass Sample{int x, y;public:Sample() {

    执行以下程序后的输出结果为( )。#include<iostream. b>class Sample{ int x, y; public: Sample() { x=y=0;} Sample(int a, int b) {x=a; y=b; } void disp () { cout<<"x="<<x<<"y="<<y<<end1; }};void main(){ Sample s(2,3), *p=&s; p->disp();}

    A.x=1, y=3

    B.x=2, y=4

    C.x=3, y=2

    D.x=2, y=3


    正确答案:D

  • 第18题:

    设x、y、z均为int型变量,则执行以下语句后,x、y, z的值为( ) X=1; y=0; Z=2; y++&&++Z ||++ X;

    A.2、l、3

    B.2、0、3

    C.2、l、3

    D.2、1、2


    正确答案:D
    语句序列“x=l;y=0;z=2;y++&&++z||++x;”先使变量x的值为1,变量y的值为0,变量Z的值为2。由逻辑与和逻辑或构成的逻辑表达式的特别计算规则,顺序计算各逻辑子表达式,并当一旦能得到逻辑子表达式的结果时,就立即结束逻辑子表达式的计算,不再计算该逻辑子表达式。计算y++因y的值为0,使y++&&++z的结果为0,立即去计算++X,这次计算使变量y的值变成1,而变量Z的值本改变。接着计算++X,使X的值变为2。所以经上述语句执行后,X、y、Z的值依次为2、1、Z。确解答为D。

  • 第19题:

    设x,y,z,(均为整型变量,现有如下语句x=y=z=1;t=++x‖++y&&++z;,则执行这个语句后t的值为

    A.2

    B.1

    C.0

    D.不定值


    正确答案:B
    解析:逻辑与(&&)优先于逻辑或(‖)优先于赋值运算符。由于逻辑运算符的结果为逻辑值,真为1,假为0,题目中的逻辑值为真。

  • 第20题:

    设X,Y为两个随机变量,且P(X≥0,y≥0)=,P(X≥0)=P(Y≥0)=,则P(max{X,Y)≥0)_______.


    答案:
    解析:

  • 第21题:

    设随机变量X和Y相互独立,且X~N(0,1),Y~N(1,1),则()

    • A、P{X+Y≤0}=0.5
    • B、P{X+Y≤1}=0.5
    • C、P{X-Y≤0}=0.5
    • D、P{X-Y≤1}=0.5

    正确答案:B

  • 第22题:

    设x,y,z,t均为int型变量,则执行以下语句后,t的值为()。x=y=z=1;t=++x||++y&&++z;

    • A、不定值
    • B、2
    • C、1
    • D、0

    正确答案:C

  • 第23题:

    单选题
    有以下说明语句:struct point{int x;int y;}p;则正确的赋值语句是()
    A

    point.x=1;point.y=2;

    B

    point={1,2};

    C

    p.x=1;p.y=2;

    D

    p={1,2};


    正确答案: B
    解析: 暂无解析