1、 reverse_copy(a,a+4,b);1.7 数组降幂排序,查找和输出functional double a=1.1,4.4,3.3,2.2; sort(a,a+4,greater(); double * x=find(a,a+4,4.4); if( x=a+4) cout没有值为4.4的数组元素 else cout有值为 * x的数组元素 x=find(a,a+4,8); if(x=a+4) cout没有值为8的数组元素 else cout1.8对一维数组进行局部操作 double a=1.1,4.4,3.3,2.2,b8=8; copy(a+2,a+4,ostream_iterat
2、or/输出a2和a3,copy(a,a+Len. reverse_copy(a+1,a+4,ostream_iterator/输出a3a1 copy(a,a+4,&b4);/将数组赋值到数组b的尾部 copy(b,b+8,ostream_iterator/输出数组b sort(a+1,a+3);/对部分数组元素升幂排序/输出数组a sort(b,b+6,greater/对部分数组元素降幂排序1.9对字符数组进行操作 char a=wearehere!,b11; reverse(a,a+10);/数组元素逆向 copy(a,a+10,ostream_iterator(cout);/输出逆向后的数
3、组内容 copy(a,a+11,b);/原样赋值到数组b sort(a,a+10);/默认升幂排序a/输出排序结果b/输出数组b的内容 reverse_copy(a,a+10,b);/逆向赋值到数组b reverse(b+2,b+8);/数组b部分逆向 copy(b+2,b+8,ostream_iterator/输出数组b逆向后的部分内容 sort(a,a+10,greater/降幂排序(*find(a,a+10,e)=) int a=29,b=1001;setw(6)/输出结果为:29 1001 2910011.11 在下面的程序中,当要求输入时,均输入100,给出程序的输出结果。const
4、 double PI=3.141592;PIendlsetprecision(0)setprecision(1)setprecision(2)setprecision(3)setprecision(7) int b=100;Dec:decHex:Oct:100b;setiosflags(ios_base:showpos)resetiosflags(ios_base:showpos);1.12 分析下面程序的输出setfill(*)setw(0)15setw(1)setw(2)setw(3)setw(4)setw(16)right)setw(5)123right);left)习题1 p271.分
5、别用字符和ASCII码形式输出整数值65和66. char a=A,b=B int ascii_1=53,ascii_2=54;/ASCII码中的5和6字符输出:(int)a,int(b)ASCII码输出:(char)ascii_2(char)ascii_12.编写一个为int型变量分配100个整型量空间的程序。 int *p; p=new int100;100; *(p+i)=i; for(i=0;*(p+i)*(p+1); sort (p,p+15);n最小的是:*(p)4.声明如下数组:int a=1,2,3,4,5,6,7,8;先查找4的位置,将数组a复制给数组b,然后将数组a的内容反
6、转,再查找4的位置,最后分别输出数组a和b的内容。void main() int a=1,2,3,4,5,6,7,8,b8;数组a中4的位置是:find(a,a+8,4) copy(a,a+8,b);/将数组a制造给数组b reverse_copy(b,b+8,a);/把数组b逆向复制给a,完成a的逆转数组a反转后,的位置是:/再查找4的位置数组a的内容:8;ain数组b中的内容:2.1使用成员函数的实例struct Point void Setxy(double a,double b)/成员函数,用来重新设置数据成员 x=a;y=b; void Display()/成员函数,按指定格式输出数
7、据成员的值 coutxty double x,y;/数据成员 Point a;/定义对象a a.Setxy(10.6,18.5);/设置对象a的数据成员 a.Display();/显示对象a的数据成员a.xa.y string str1(we are here!); string str2=where are you?str10str111str1str20str213str2please input a word:str1;length of the is str1.size() complex num1(2,3);float num2(3.5,4.5);real is iamge is n
8、um1.real()num1.imag()num2.real()num2.imag()例2.11 演示string对象的例子 string str1=,str2=str1; reverse (&str10,&str10+12);/str字符串的元素逆向/输出逆向后的内容 copy(&str10+12,&str20);/原样复制到str2/输出str2 reverse_copy (&str20,&str20+12,ostream_iterator /逆向输出str2演示string对象使用成员函数表示存储区间的例子,str2(str1);/使用str1初始化str2 reverse (str1.
9、begin(),str1.end();/字符串的元素逆向 copy(str1.begin(),str1.end(),str2.begin();/原样复制到str2,str2应能容纳下str1 sort(str1.begin(),str1.end(); reverse_copy (str1.begin(),str1.end(),str2.begin();/逆向复制到str2/输出逆向后的str2的内容 reverse(str2.begin()+2,str2.begin()+8); copy(str2.begin()+2,str2.begin()+8,ostream_iterator/输出逆向后的
10、部分内容 sort(str1.begin(),str1.end(),greater/输出排序后的字符串str1 str1.swap(str2);/互相交换内容(* find(str1.begin(),str1.end(),/注意不是成员函数find0例2.13演示string对象数组的例子 string str=welcome!3;i+) copy(stri.begin(),stri.end(),ostream_iterator str0.swap(str2); str0.swap(str1);stri3.1传对象不会改变原来对象数据成员值的例子void swap(string,string)
11、;/使用string类的对象作为函数参数现在),str2(过去/定义对象str1和str2 swap(str1,str2);/使用传值方式传递str1和str2的数据成员值返回后:str1=str1 str2=void swap(string s1,string s2)/string类的对象s1,s2作为函数参数 string temp=s1;s1=s2;s2=temp;交换为:s1 s2例 3.2 使用对象指针作为函数参数的例子void swap(string*,string*);/使用string类的指针作为函数参数 swap(&str1,&str2);/使用传地址值方式传递str1和str2的地址值str1= str2=void swap(string *s1,string *s2)/string类的对象指针s1和s2作为函数参数 string temp=*s1; *s1=*s2;*s2=temp;*s1*str2=*s2例 3.3传递数组名实例#
copyright@ 2008-2023 冰点文库 网站版权所有
经营许可证编号:鄂ICP备19020893号-2