首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,实现函数sort(int A[],int n),用选择排序法把数组从大到小排序。 提示:选择排序法的思想是: (1)反复从还未排好的那部分线性表中选择出关键字最小的节点; (
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,实现函数sort(int A[],int n),用选择排序法把数组从大到小排序。 提示:选择排序法的思想是: (1)反复从还未排好的那部分线性表中选择出关键字最小的节点; (
admin
2016-10-28
85
问题
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,实现函数sort(int A[],int n),用选择排序法把数组从大到小排序。
提示:选择排序法的思想是:
(1)反复从还未排好的那部分线性表中选择出关键字最小的节点;
(2)按照从线性表中选择出的顺序排列节点,重新组成线性表;
(3)直到未排序的那部分为空,则重新形成的线性表是一个有序的线性表。
补充函数sort(int A[],int n),实现选择排序。
注意:请勿改动主函数。
#include<iostream.h>
#define N10
void sort(int A[N],int n)
{
}
int main()
{
intA[N]={1,2,i0,5,7,19,34,78,-3,8);
sort(A,10);
for(int i:0;i<sizeof(A)/
sizeof(int);i++)
{
cout<<A
<<’ ’;
}
cout<<endl;
return0;
}
选项
答案
int i,j; for(i=0;i<n-1;i++) { for(j=0;j<n-1-i;j++) { if(A[j]>A[j+1])//如果前面的数比后面的大则进行交换 { int t=A[j];//做交换 A[j]=A[j+1]; A[j+1]=t; } } }
解析
(1)数组A[N]中有n个数,进行n-1趟比较,在每一趟比较中两两比较的次数逐渐减少,比如若有6个数9,8,5,4,2,0。第一次将8和9对调,第二次将第2和第3个数(9和5)对调,……,如此共进行5次,得到8-5-4-2-0-9的顺序,可以看到:最大的数9已“沉底”,成为最下面一个数,而小的数“上升”。最小的数0己向上“浮起”一个位置。经第一趟(共5次)后,已得到最大的数。然后进行第二趟比较,对余下的前面5个数按上法进行比较,经过4次比较,得到次大的数8。如此进行下去。可以推知,6个数要比较5趟。在第一趟中要进行两两比较5次,在第二趟中比4次,……第5趟比1次。因此设置两层循环,外层循环变量i从0变化大到n-1,内层循环变量j从0到n-j,在内层循环体内,比较相邻两数,如果前面比后面的大则交换。
(2)在内层循环体内,如果前面的元素比后面的元素大,则用一个临时变量记录前面的第j个元素,然后将第j+1个元素赋值给第j个元素,临时变量值赋给第j+1个元素,如此完成两个元素的交换。
转载请注明原文地址:https://kaotiyun.com/show/2KNp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有如下的程序:#include<iostream>usingnamespacestd;classAT{friendostream&operator<<(ostream&,AT);}at;os
对于派生类的构造函数,在定义对象时构造函数的执行顺序为:先执行调用______的构造函数,再执行调用子对象类的构造函数,最后执行派生类的构造函数体中的内容。
在不同文件的函数中,对非静态全局变量的引用要加的关键字是()。
定义如下枚举类型:enumNumber{one=1,tow=2,four=4,eight=8},则下列语句正确的是()。
若有以下变量和函数说明:#include<iostream.h>charCh=’*’;voidsub(intx,inty,charch,double*Z){switch(ch){
静态成员函数可以直接访问类的【】成员,不能直接访问类的【】成员。
C++程序是从【】函数开始执行的。
若已定义的函数有返回值,则以下关于该函数调用的叙述中错误的是
若有以下定义:inta[]={1,2,3,4,5,6,7}charc1=’b’,c2=’2’;则数值不为2的表达式是
随机试题
下列作品中,运用了倒叙手法的是()
患者,女性,26岁。孕2产0,孕24周,发热伴恶心、呕吐、下腹痛10小时而入院。入院后诊断为妊娠合并急性阑尾炎。对于该患者首选的治疗方案是
六味安消散的君药为()
葡萄糖的特殊杂质检查项目有
斜梁AB承受荷载如图所示,哪一个是正确的剪力图?
下列关于雨水收集系统的说法中正确的是()。
确保学前教育供给充足、充分实现其公益性的根本保障是()。
比较古树上的生长年轮使科学家能从一片木片上测定用作木材的树被砍伐时的年代。因此,通过分析残存古代建筑上的木材的生长年轮,考古学家能够精确测定那些建筑物被建造的年代。下列哪一项是上文所基于的假设?()
Idon’tthinkthefilmisworth________.
WhenLauraLangankifoundextratowelsinthelaundrysmellinglemonyfresh,shenever【C1】______thatmeanther13year-oldson
最新回复
(
0
)