猿问

您好,想要C++ 定义模板函数实现冒泡法升序排序,请问我该怎么做呢?

用 C++ 语言的编程风格编写两个函数模板:( 1 ) void bubble_sort(T a[], int num); 功能:用冒泡排序法对数组 a 中的 num 个元素进行升序排列。( 2 ) void print(T a[],int num) ; 功能:输出数组 a 中的 num 个元素值,输出所有元素结束后换行主函数中定义两个数组:int a[6]; 和 double b[7];数组的元素由键盘读入,无输入提示。然后调用以上两个函数实现程序的功能。本题输入及输出结果对应如下 :测试用例 1 :输入内容:3 5 9 -7 1 6< 回车 >1.1 9.8 -5.4 3.5 6.8 3.2 0.1< 回车 >输出内容:-7,1,3,5,6,9,-5.4,0.1,1.1,3.2,3.5,6.8,9.8,

呼唤远方
浏览 357回答 1
1回答

Helenr

#include <iostream>using namespace std;template<typename T>void bubble_sort(T a[], int num){int i, j, temp;int flag = 1;for (i = 0; i < num - 1 && flag == 1; i++) //冒泡排序N*N{flag = 0;for (j = 0; j < num - i - 1; j++){if (a[j + 1] < a[j]){temp = a[j + 1];a[j + 1] = a[j];a[j] = temp;flag = 1;}}}}template<typename T>void print(T a[],int num){int i;for (i = 0; i < num; i++){cout << a[i] << " ";}}int main(){int i;int a[6];double b[7];for (i = 0; i < 6; i++){cin >> a[i];}for (i = 0; i < 7; i++){cin >> b[i];}bubble_sort(a, 6);bubble_sort(b, 7);print(a, 6);print(b, 7);return 0;}
随时随地看视频慕课网APP
我要回答