教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 精品文档 > 综合文档 >

河北工业大学-C++实验报告实验五

来源:网络收集 时间:2026-08-19
导读: 1、已知下列主函数: int main() { cout 声明求3个数中最小者的函数模板,并写出调用此函数模板的完整程序。 #include using namespace std; template T min(T a,T b,T c) { T min; if(a =c) min=c; return min; } int main() { cout 2、编写一个求任意类型

1、已知下列主函数: int main() {

cout<

声明求3个数中最小者的函数模板,并写出调用此函数模板的完整程序。

#include using namespace std; template T min(T a,T b,T c) { T min; if(a<=b) min=a; else min=b; if(min>=c) min=c; return min; }

int main() {

cout<

2、编写一个求任意类型数组中最大元素和最小元素的程序,要求将求最大元素和最小元素的函数设计成函数模板,并写出调用此函数模板的完整程序,使

得函数调用时,数组的类型可以是整型也可以是双精度类型。

#include using namespace std; template

void GetMaxMin(T *a, int theSize) {

T tmpMax = a[0]; T tmpMin = a[0];

for (int i = 0; i < theSize; ++i) {

if (a[i] > tmpMax) {

tmpMax = a[i]; }

if (a[i] < tmpMin) {

tmpMin = a[i]; } }

cout<<\ cout<<\}

int c[]={1,2,3};

double b[]={1.1,2.2,3.3}; char d[]={'a','b','c'}; void main() {

GetMaxMin(c,3); GetMaxMin(b,3); GetMaxMin(d,3); }

3、编写一个函数模板,使用冒泡排序将数组内容由小到大排列并打印出来,并写出调用此函数模板的完整程序,使得函数调用时,数组的类型可以是整型也

可以是双精度型。 #include using namespace std; template class paixu { t* set; int n; public:

paixu(t* data,int m):set(data),n(m){} void sort(); };

template void paixu::sort() { t temp;

for(int i=0;iset[j+1]) { temp=set[j]; set[j]=set[j+1]; set[j+1]=temp; }

for(int j=0;j

int a[]={1,3,2,7,5,9};

double b[]={6.6,9.9,7.7,8.8,4.4,2.2}; paixup1(a,6); p1.sort();

paixu p2(b,6); p2.sort();

char c[]={'a','c','r','b'}; paixup3(c,4); p3.sort(); return 0; }

4、编写一个程序,使用类模板对数组元素进行排序、倒置、查找和求和。 【提示】 设计一个类模板 template class Array {

…… };

具有对数组元素进行排序、倒置、查找和求和功能,然后产生类型实参分别是int型和double型的两个模板类,分别对整型数组与双精度数组完成所要求的操作。

#include

#include

template

class Array { T *set; int n; public:

Array(T *data,int i){set=data;n=i;}

~Array(){}

void sort(); // 排序

int seek(T key); // 查找指定的元素

T sum(); // 求和

void disp(); // 显示所有的元素 };

template

void Array::sort() {

河北工业大学-C++实验报告实验五.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wendang/404147.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)