x是2,y是1
第一步把x+y的值赋给x,即x为3
第二步把x-y的值赋给y,即y为3-2=1
第三步把x-y的值赋给x,即x为3-1=2
这个就是把x和y值互换的。
p为一个整形的二级指针,在第一个循环中你为其赋值,得到的
p[0]=m,p[1]=m+2;p[2]=m+8;
第二个循环使用的时候,
第一次是(p[0])[4],即为sum加上p[0]所指向的后面第4个数据即m[4]=8,故第一次结束后sum=8;
第一次是(p[1])[3],即为sum加上p[1]所指向的后面第3个数据即m[5]=10,故第二次结束后sum=8+10=18;
第一次是(p[3])[3],即为sum加上p[2]所指向的后面第2个数据即m[10]=20,故第一次结束后sum=18+20=38;
最终输出为:38,选择B
D肯定是错的,数组名arr是不能进行arr++或arr--那样的 *** 作的,它类似一个常量指针
const
int
q
=
arr;
q++;
//
这样是错误的
C是正确的
p+4就是将p指针的地址向后偏移4,前面有个,表示取那个地址的值,也就是arr[4]的值
#include<iostreamh>class MyClass {
public: MyClass(int x):value(x){cout<<"Constructor"<<endl;} ~MyClass(){cout<<"Destructor"<<endl;} void Print() const;private: int value;};void MyClass::Print() const{ cout<<"The value is"<<value<<endl;}int main(){const MyClass object(10);objectPrint();return 0;}
B
判断语句
if(x>y)不成立
因为没有大括号,所有只有
z=x;这句是判断后执行的语句,因为x>y为false,所有不执行,而执行了
x=y;y=z这句,所有x=2,y=3,z=3,所有答案是233,所有选B
以上就是关于若有下列程序段intx=1;y=2;x=x+y;y=x-y;x=x-y; 则执行后x和y的值分别是全部的内容,包括:若有下列程序段intx=1;y=2;x=x+y;y=x-y;x=x-y; 则执行后x和y的值分别是、有如下程序,则下列说法正确的是()、设有下列程序段:int arr[10]={1,2,3},*p=arr;,下列正确的是等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)