河北工业大学C++实验报告实验五Word格式文档下载.docx
- 文档编号:6127991
- 上传时间:2023-05-06
- 格式:DOCX
- 页数:9
- 大小:56.44KB
河北工业大学C++实验报告实验五Word格式文档下载.docx
《河北工业大学C++实验报告实验五Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《河北工业大学C++实验报告实验五Word格式文档下载.docx(9页珍藏版)》请在冰点文库上搜索。
usingnamespacestd;
template<
typenameT>
Tmin(Ta,Tb,Tc)
Tmin;
if(a<
=b)
min=a;
else
min=b;
if(min>
=c)
min=c;
returnmin;
2、编写一个求任意类型数组中最大元素和最小元素的程序,要求将求最大元素和最小元素的函数设计成函数模板,并写出调用此函数模板的完整程序,使得函数调用时,数组的类型可以是整型也可以是双精度类型。
template<
classT>
voidGetMaxMin(T*a,inttheSize)
TtmpMax=a[0];
TtmpMin=a[0];
for(inti=0;
i<
theSize;
++i)
{
if(a[i]>
tmpMax)
tmpMax=a[i];
}
if(a[i]<
tmpMin)
tmpMin=a[i];
"
maxelemis"
tmpMax<
minelemis"
tmpMin<
intc[]={1,2,3};
doubleb[]={1.1,2.2,3.3};
chard[]={'
};
voidmain()
GetMaxMin(c,3);
GetMaxMin(b,3);
GetMaxMin(d,3);
3、编写一个函数模板,使用冒泡排序将数组内容由小到大排列并打印出来,并写出调用此函数模板的完整程序,使得函数调用时,数组的类型可以是整型也可以是双精度型。
typenamet>
classpaixu
t*set;
intn;
public:
paixu(t*data,intm):
set(data),n(m){}
voidsort();
voidpaixu<
t>
:
sort()
ttemp;
for(inti=0;
i<
n;
i++)
for(intj=0;
j<
n-1;
j++)
if(set[j]>
set[j+1])
{
temp=set[j];
set[j]=set[j+1];
set[j+1]=temp;
cout<
set[j]<
"
;
inta[]={1,3,2,7,5,9};
doubleb[]={6.6,9.9,7.7,8.8,4.4,2.2};
paixu<
int>
p1(a,6);
p1.sort();
double>
p2(b,6);
p2.sort();
charc[]={'
r'
char>
p3(c,4);
p3.sort();
return0;
4、编写一个程序,使用类模板对数组元素进行排序、倒置、查找和求和。
【提示】
设计一个类模板
classType>
classArray
……
具有对数组元素进行排序、倒置、查找和求和功能,然后产生类型实参分别是int型和double型的两个模板类,分别对整型数组与双精度数组完成所要求的操作。
iostream.h>
iomanip.h>
classArray
T*set;
Array(T*data,inti){set=data;
n=i;
}
~Array(){}
//排序
intseek(Tkey);
//查找指定的元素
Tsum();
//求和
voiddisp();
//显示所有的元素
voidArray<
T>
sort()
inti,j;
Ttemp;
for(i=1;
i++)
for(j=n-1;
j>
=i;
j--)
if(set[j-1]>
set[j])
temp=set[j-1];
set[j-1]=set[j];
set[j]=temp;
intArray<
seek(Tkey)
inti;
for(i=0;
if(set[i]==key)
returni;
return-1;
TArray<
sum()
Ts=0;
s+=set;
returns;
disp()
set[i]<
voidmain()
inta[]={6,3,8,1,9,4,7,5,2};
doubleb[]={2.3,6.1,1.5,8.4,6.7,3.8};
Array<
arr1(a,9);
arr2(b,6);
arr1:
原序列:
arr1.disp();
8在arr1中的位置:
arr1.seek(8)<
arr1.sort();
排序后:
arr2:
arr2.disp();
8.4在arr2中的位置:
arr2.seek(8.4)<
arr2.sort();
}5、编写一个程序,求输入数的平方根。
设置异常处理,对输入负数的情况给出提示。
#include<
cmath>
doublenumber;
请输入一个数:
cin>
>
number;
try
if(number<
0)
thrownumber;
cout<
平方根是"
<
sqrt(number)<
catch(double)
输入数为负数,错误!
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 河北 工业大学 C+ 实验 报告