搜题
网友您好,请在下方输入框内输入要搜索的题目:
搜题
题目内容 (请给出正确答案)
提问人:网友snacas 发布时间:2022-01-07
[主观题]

写出模板函数实现数值型数组元素值按从小到大排序的程序。include<iostream>using namespac

写出模板函数实现数值型数组元素值按从小到大排序的程序。

include<iostream>

using namespace std;

template <class T>

void sort(T b[],int n)

{

T temp;

int i,j;

T *a=new T[n];

for (i=0;i<n;i++){a[i]=b[i];}

for(i=0;i<n-1;i++)

{

for(j=i+1;j<n;j++)

{ if(a[i]>a[j])

{temp=a[i];

a[i]=a[j];

a[j]=temp;

}

}

}

for(i=0;i<n;i++){cout<<a[i]<<" ";}

cout<<endl;

delete []a;

}

void main()

{

int i,n=6;

int a[]={5,1,9,10,3,8};

____________;

for(i=0;i<n;i++)

{cout<<a[i]<<" ";}

cout<<endl;

}

简答题官方参考答案 (由简答题聘请的专业题库老师提供的解答)
查看官方参考答案
更多“写出模板函数实现数值型数组元素值按从小到大排序的程序。include<iostream>using namespac”相关的问题
第1题
下面程序的功能是从键盘输入10个整数,用函数编程实现...

下面程序的功能是从键盘输入10个整数,用函数编程实现计算其最大值和最小值,并互换它们所在数组中的位置。程序运行结果如下: Input n(n<=10):10↙ 0 1 2 3 4 6 7 9 10 input numbers:1 –2 -1 ↙ exchange results: -2 按要求在空白处填写适当的表达式或语句,使程序完整并符合题目要求。 #include> void ReadData(int a[], int n); void PrintData(int a[], int n); void MaxMinExchang(int a[], int n); void Swap(int *x, int *y); int main() { int a[10], n; printf("Input n(n<=10):"); scanf("%d", &n); printf("input %d numbers:", n); readdata(a, maxminexchang(a, printf("exchange results:"); printdata(a, return 0; } * 函数功能:输入数组a的n个元素值 void readdata(int a[], int n) { i; for (i="0;" i i++) &a[i]); 函数功能:输出数组a的n个元素值 printdata(int printf("%5d", a[i]); printf("\n"); 函数功能:将数组a中的最大数与最小数位置互换 maxminexchang(________, maxvalue="a[0]," minvalue="a[0]," maxpos="0," minpos="0;" if (a[i]> maxValue) { maxValue = _______; maxPos = ____; } if (a[i] < minValue) { minValue = a[i]; minPos = i; } } Swap(________________); } /* 函数功能:两整数值互换 */ void Swap(int *x, int *y) { int ________; temp = *x; _________; *y = temp; }

A、第41行: int a[] 第49行: a[i] 第50行: i 第58行: &a[maxPos], &a[minPos] 第64行: temp 第66行: *x = *y

B、第41行: int a 第49行: a[i] 第50行: i 第58行: a[maxPos], a[minPos] 第64行: temp 第66行: *x = *y

C、第41行: int a[] 第49行: a[0] 第50行: 0 第58行: &a[maxPos], &a[minPos] 第64行: *temp 第66行: x = y

D、第41行: int a[] 第49行: a[n-1] 第50行: n-1 第58行: *a[maxPos], *a[minPos] 第64行: &temp 第66行: x = y

点击查看答案
第2题
用冒泡法对数组a中10个元素{60,70,99,10,90,40,20,50,30,80} 按从大到小的顺序进行排序。要求定义函数sort实现排序,在主函数中输出排好序的数组元素。
点击查看答案
第3题
下面程序的功能是用函数编程实现两个数组中对应元素值...

下面程序的功能是用函数编程实现两个数组中对应元素值的交换。按要求在空白处填写适当的表达式或语句,使程序完整并符合题目要求。 程序的运行结果示例: Input array size(n<=10):5↙ 1 2 3 4 5 6 7 8 9 10 input array a:1 5↙ b:6 10↙ output a: b: #include> #define N 10 void ReadData(int a[], int n); void PrintData(int a[], int n); void Swap(int *x, int *y); int main() { int a[N], b[N], i, n; printf("Input array size(n<=10):"); scanf("%d", &n); printf("input array a:"); readdata(a, n); b:"); readdata(b, for (i="0;" i i++) { swap(____________); } printf("output printdata(a, printdata(b, return 0; * 函数功能:输入数组a的n个元素值 void readdata(int a[], int n) i; &a[i]); 函数功能:输出数组a的n个元素值 printdata(int printf("%5d", a[i]); printf("\n"); 函数功能:两整数值互换 swap(int *x, *y) temp; ____________;> A、第17行:&a[i], &b[i] 第52行:temp = *x 第53行:*x = *y 第54行:*y = temp

B、第17行:a[i], b[i] 第52行:temp = *x 第53行:*x = *y 第54行:*y = temp

C、第17行:&a[i], &b[i] 第52行:*temp = *x 第53行:*x = *y 第54行:*y = *temp

D、第17行:a[i], b[i] 第52行:temp = x 第53行:x = y 第54行:y = temp

点击查看答案
第4题
编号为1,2,3,……,n的n个人按顺时针方向围坐一圈。任选一个正整数作为报数上限m,从第一个人开始按顺
1. 编号为1,2,3,……,n的n个人按顺时针方向围坐一圈。任选一个正整数作为报数上限m,从第一个人开始按顺时针方向自1开始顺序报数,报到m时停止报数。报m的人出列,从他在顺时针方向上的下一个人开始重新从1开始报数,如此下去,求最后一个出列的人的编号是多少。要求使用STL中的容器实现,m、n均从标准输入装置中读取。 2. 请撰写一个可以统计英语文章中出现单词的频率的程序。它从一个用户指定的文本文件 (“article.txt”,请从网页上下载此文件) 中读取文字,并统计每个单词出现的次数。将统计的单词及其频率结果输出到一个文件“word_freq.txt”。 3. 对数组排序的方式可以采取多种方法,如选择排序、冒泡排序、快速排序等,选取任一种排序算法,编写一个模板函数,实现对不同类型(包含整型、浮点型、字符串类型)的数组进行排序,并另编写一个模板函数输出排序结果。最后编写main函数,测试实验结果。

点击查看答案
第5题
按如下函数原型编程从键盘输入一个m行n列的二维数组,然后计算数组中元素的最大值及其所在的行
列下标值。其中,m和n的值由用户从键盘输入,已知m和n的值都不超过10。

按如下函数原型编程从键盘输入一个m行n列的二维数组,然后计算数组中元素的最大值及其所在的行列下标值。

点击查看答案
第6题
请补充函数proc(),该函数的功能是把数组num中的数按从小到大的顺序排列(数组元素个数及值从主函

请补充函数proc(),该函数的功能是把数组num中的数按从小到大的顺序排列(数组元素个数及值从主函数中输入)。

例如,输入n=5,num[0]~num[4]依次为5 7 2 8 0,结果为0 2 5 7 8。

注意:部分源程序给出如下。

请勿改动main()函数和其他函数中的任何内容,仅在函数proc()的横线上填入所编写的若干表达式或语句。

试题程序:

请补充函数proc(),该函数的功能是把数组num中的数按从小到大的顺序排列(数组元素个数及值从主函

请补充函数proc(),该函数的功能是把数组num中的数按从小到大的顺序排列(数组元素个数及值从主函

请补充函数proc(),该函数的功能是把数组num中的数按从小到大的顺序排列(数组元素个数及值从主函

点击查看答案
第7题
若有函数Void fun(double a[ ],int *n) { …… }以下叙述中正确的是 A)调用fun函数时只有数组执行

若有函数

Void fun(double a[ ],int *n)

{ …… }

以下叙述中正确的是

A)调用fun函数时只有数组执行按值传送,其他实参和形参之间执行按地址传送

B)形参a和n都是指针变量

C)形参a是一个数组名,n是指针变量

D)调用fun函数时将把double型实参数组元素一一对应地传送给形参a数组

点击查看答案
第8题
数组编程,具有以下功能 (1)从键盘输入两个5*5的矩阵到数组a和b中. (2)编写一个函数matrix_div实现两个矩阵a与b的按位除法(对应元素相除),考虑被0除的情况,得到矩阵数组c, (3) 输出数组c. 要求:编程时将变量名a,b,c加自己姓名的首字母。使用for循环
点击查看答案
第9题
在主函数中定义一个含有12个指针的指针数组,令它的数组元素分别指向12个由月份组成的字符串常量,如第0个元素指向”January”。在主函数中,若输入月份整数值,则从上述指针数组中找到并输出相应月份的字符串值。
点击查看答案
第10题
以下函数模板max()的功能是返回数组a中最大元素的值。请将横线处缺失部分补充完整。 template<type

以下函数模板max()的功能是返回数组a中最大元素的值。请将横线处缺失部分补充完整。

template<typename T>T max(T a[],int n)

{

T m=a[0]

for(int i=1;i<n;i++)

if(a[i]>m)______;

return m;

}

点击查看答案
重要提示: 请勿将账号共享给其他人使用,违者账号将被封禁!
查看《购买须知》>>>
重置密码
账号:
旧密码:
新密码:
确认密码:
确认修改
购买搜题卡查看答案
购买前请仔细阅读《购买须知》
请选择支付方式
微信支付
支付宝支付
点击支付即表示你同意并接受《服务协议》《购买须知》
立即支付
搜题卡使用说明

1. 搜题次数扣减规则:

功能 扣减规则
基础费
(查看答案)
加收费
(AI功能)
文字搜题、查看答案 1/每题 0/每次
语音搜题、查看答案 1/每题 2/每次
单题拍照识别、查看答案 1/每题 2/每次
整页拍照识别、查看答案 1/每题 5/每次

备注:网站、APP、小程序均支持文字搜题、查看答案;语音搜题、单题拍照识别、整页拍照识别仅APP、小程序支持。

2. 使用语音搜索、拍照搜索等AI功能需安装APP(或打开微信小程序)。

3. 搜题卡过期将作废,不支持退款,请在有效期内使用完毕。

请使用微信扫码支付(元)

订单号:

遇到问题请联系在线客服

请不要关闭本页面,支付完成后请点击【支付完成】按钮
遇到问题请联系在线客服
恭喜您,购买搜题卡成功 系统为您生成的账号密码如下:
重要提示:请勿将账号共享给其他人使用,违者账号将被封禁。
发送账号到微信 保存账号查看答案
怕账号密码记不住?建议关注微信公众号绑定微信,开通微信扫码登录功能
警告:系统检测到您的账号存在安全风险

为了保护您的账号安全,请在“简答题”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!

- 微信扫码关注简答题 -
警告:系统检测到您的账号存在安全风险
抱歉,您的账号因涉嫌违反简答题购买须知被冻结。您可在“简答题”微信公众号中的“官网服务”-“账号解封申请”申请解封,或联系客服
- 微信扫码关注简答题 -
请用微信扫码测试
欢迎分享答案

为鼓励登录用户提交答案,简答题每个月将会抽取一批参与作答的用户给予奖励,具体奖励活动请关注官方微信公众号:简答题

简答题官方微信公众号

简答题
下载APP
关注公众号
TOP