欢迎来到天天文库
浏览记录
ID:6472047
大小:51.50 KB
页数:15页
时间:2018-01-15
《c++习题与解析-引用》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、01.分析以下程序的执行结果#includevoidmain(){inta;int&b=a;//变量引用b=10;cout<<"a="<2、ream.h>classSample{intx;public:Sample(){};Sample(inta){x=a;}Sample(Sample&a){x=a.x+1;}voiddisp(){cout<<"x="<3、-------------------------------------03.编写程序,调用传递引用的参数,实现两个字符串变量的交换。例如开始:char*ap="hello";char*bp="howareyou?";交换的结果使得ap和bp指向的内容分别为:ap:"howareyou?"bp:"hello"解:本题使用引用调用(实现由于字符串指针本身就是地址,这里可不使用引用参数,效果是一样的)。程序如下:#include#includevoidswap(char*&x,c4、har*&y)//引用作为参数{char*temp;temp=x;x=y;y=temp;}voidmain(){char*ap="hello";char*bp="howareyou?";cout<<"ap:"<5、owareyou?bp:hello-----------------------------------------------------04.设计一个集合类Set,包括将集合置空、添加元素、判断元素是否在集合中、输出集合,以及将集合中元素逆置,另外还有一个拷贝构造函数,并使用一些数据进行测试。解:Set类包括私有数据成员elems(存放集合元素)、pc(当前元素指针),一个默认构造函数和拷贝构造函数Set(Set&s),另有成员函数empty()(将集合置空)、isempty()(判断集合是否为空)、ismember6、of()(判断元素是否在集合中)、add()(添加元素)、print()(输出集合)、reverse(将集合中元素置逆)。本题程序如下:#include#defineMax100classSet{public:Set(){pc=0;}Set(Set&s);//对象引用作为参数voidempty(){pc=0;}intisempty(){returnpc==0;}intismemberof(intn);intadd(intn);voidprint();voidreverse();private:in7、telems[Max];intpc;};intSet::ismemberof(intn){for(inti=0;iMax)return0;else{elems[pc++]=n;return1;}}Set::Set(Set&p){pc=p.pc;for(inti=0;i8、::print(){cout<<"{";for(inti=0;i0)cout<
2、ream.h>classSample{intx;public:Sample(){};Sample(inta){x=a;}Sample(Sample&a){x=a.x+1;}voiddisp(){cout<<"x="<3、-------------------------------------03.编写程序,调用传递引用的参数,实现两个字符串变量的交换。例如开始:char*ap="hello";char*bp="howareyou?";交换的结果使得ap和bp指向的内容分别为:ap:"howareyou?"bp:"hello"解:本题使用引用调用(实现由于字符串指针本身就是地址,这里可不使用引用参数,效果是一样的)。程序如下:#include#includevoidswap(char*&x,c4、har*&y)//引用作为参数{char*temp;temp=x;x=y;y=temp;}voidmain(){char*ap="hello";char*bp="howareyou?";cout<<"ap:"<5、owareyou?bp:hello-----------------------------------------------------04.设计一个集合类Set,包括将集合置空、添加元素、判断元素是否在集合中、输出集合,以及将集合中元素逆置,另外还有一个拷贝构造函数,并使用一些数据进行测试。解:Set类包括私有数据成员elems(存放集合元素)、pc(当前元素指针),一个默认构造函数和拷贝构造函数Set(Set&s),另有成员函数empty()(将集合置空)、isempty()(判断集合是否为空)、ismember6、of()(判断元素是否在集合中)、add()(添加元素)、print()(输出集合)、reverse(将集合中元素置逆)。本题程序如下:#include#defineMax100classSet{public:Set(){pc=0;}Set(Set&s);//对象引用作为参数voidempty(){pc=0;}intisempty(){returnpc==0;}intismemberof(intn);intadd(intn);voidprint();voidreverse();private:in7、telems[Max];intpc;};intSet::ismemberof(intn){for(inti=0;iMax)return0;else{elems[pc++]=n;return1;}}Set::Set(Set&p){pc=p.pc;for(inti=0;i8、::print(){cout<<"{";for(inti=0;i0)cout<
3、-------------------------------------03.编写程序,调用传递引用的参数,实现两个字符串变量的交换。例如开始:char*ap="hello";char*bp="howareyou?";交换的结果使得ap和bp指向的内容分别为:ap:"howareyou?"bp:"hello"解:本题使用引用调用(实现由于字符串指针本身就是地址,这里可不使用引用参数,效果是一样的)。程序如下:#include#includevoidswap(char*&x,c
4、har*&y)//引用作为参数{char*temp;temp=x;x=y;y=temp;}voidmain(){char*ap="hello";char*bp="howareyou?";cout<<"ap:"<5、owareyou?bp:hello-----------------------------------------------------04.设计一个集合类Set,包括将集合置空、添加元素、判断元素是否在集合中、输出集合,以及将集合中元素逆置,另外还有一个拷贝构造函数,并使用一些数据进行测试。解:Set类包括私有数据成员elems(存放集合元素)、pc(当前元素指针),一个默认构造函数和拷贝构造函数Set(Set&s),另有成员函数empty()(将集合置空)、isempty()(判断集合是否为空)、ismember6、of()(判断元素是否在集合中)、add()(添加元素)、print()(输出集合)、reverse(将集合中元素置逆)。本题程序如下:#include#defineMax100classSet{public:Set(){pc=0;}Set(Set&s);//对象引用作为参数voidempty(){pc=0;}intisempty(){returnpc==0;}intismemberof(intn);intadd(intn);voidprint();voidreverse();private:in7、telems[Max];intpc;};intSet::ismemberof(intn){for(inti=0;iMax)return0;else{elems[pc++]=n;return1;}}Set::Set(Set&p){pc=p.pc;for(inti=0;i8、::print(){cout<<"{";for(inti=0;i0)cout<
5、owareyou?bp:hello-----------------------------------------------------04.设计一个集合类Set,包括将集合置空、添加元素、判断元素是否在集合中、输出集合,以及将集合中元素逆置,另外还有一个拷贝构造函数,并使用一些数据进行测试。解:Set类包括私有数据成员elems(存放集合元素)、pc(当前元素指针),一个默认构造函数和拷贝构造函数Set(Set&s),另有成员函数empty()(将集合置空)、isempty()(判断集合是否为空)、ismember
6、of()(判断元素是否在集合中)、add()(添加元素)、print()(输出集合)、reverse(将集合中元素置逆)。本题程序如下:#include#defineMax100classSet{public:Set(){pc=0;}Set(Set&s);//对象引用作为参数voidempty(){pc=0;}intisempty(){returnpc==0;}intismemberof(intn);intadd(intn);voidprint();voidreverse();private:in
7、telems[Max];intpc;};intSet::ismemberof(intn){for(inti=0;iMax)return0;else{elems[pc++]=n;return1;}}Set::Set(Set&p){pc=p.pc;for(inti=0;i8、::print(){cout<<"{";for(inti=0;i0)cout<
8、::print(){cout<<"{";for(inti=0;i0)cout<
此文档下载收益归作者所有