首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,实现函数sort(intA[].int.n),用选择排序法把数组从大到小排序。 提示:选择排序法的思想是: (1)反复从还未排好的那部分线性表中选择出关键字最
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,实现函数sort(intA[].int.n),用选择排序法把数组从大到小排序。 提示:选择排序法的思想是: (1)反复从还未排好的那部分线性表中选择出关键字最
admin
2017-11-27
78
问题
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,实现函数sort(intA[].int.n),用选择排序法把数组从大到小排序。
提示:选择排序法的思想是:
(1)反复从还未排好的那部分线性表中选择出关键字最小的节点;
(2)按照从线性表中选择出的顺序排列节点,重新组成线性表;
(3)直到未排序的那部分为空,则重新形成的线性表是一个有序的线性表。
补充函数sort(intA[],int n),实现选择排序。
注意:请勿改动主函数。
#include
#define N 10
void sort(int A[N],int n)
{
}
int main()
{
int A[N]={1,2,10,5,7,19,34,78,-3,8};
Sort(A,10);
for(int i=0;i
{
cout<
<<’ ’;
}
cout<
return 0;
}
选项
答案
int i,j; for (i=0;i
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)在内层循环体内,如果前面的元素比后面的元素大,则用一个临时变量记录前面的第i个元素,然后将第j+1个元素赋值给第j个元素,临时变量值赋给第j+1个元素,如此完成两个元素的交换。
转载请注明原文地址:https://kaotiyun.com/show/MJAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
在长度为n的有序线性表中进行二分查找。最坏的情况下,需要的比较次数为______。
若有如下语句#include<iostream.h>voidmain(){intx=3;do{x=x-2cout<<x;{while(!(--x);}则上面程序段
友元运算符。obj1>obj2被C++编译器解释为()。
下列运算符中全都可以被友元函数重载的是()
下列对派生类的描述中,()是错误的
当需要函数返回多个值时,函数的参数应采用指针或【 】。
有如下程序:#include<iostream>usingnamespacestd;classA{public:A(){cout<<"A";}~A(){cout<<"~A";)
下面不属于软件设计原则的是
下列关系运算中,能使经运算后得到的新关系中属性个数多于原来关系中属性个数的是
随机试题
A.窦房结B.心房肌C.房室结D.心室肌E.浦肯野细胞传导速度最慢的是()。
该小儿的年龄最大的可能是( )。按公式计算此小儿的体重约是( )。
根据水利部《水利建设质量工作考核办法》(水建管[2014]351号),建设项目质量事故应急处置主要考核内容不包括()。
项目管理实施规划的编制依据,不包括()。
注册资本应不少于()万元人民币。公司注册资本100万元,不正确的有()。
其他因素不变,若单价与单位变动成本同方向、同比例变动,则盈亏临界点的业务量不变。()
甲午中日战争后,中国清政府与日本于1895年4月17日在日本马关签订丧权辱国的《马关条约》。根据条约规定,中国割让()给日本。
在VBA代码调试过程中,能显示当前过程中变量声明及变量值信息的是()。
Employeesknewfromthevery______thattheirjobswouldfinishthisyear.
RobertEllisSmithbelievesidentitytheftisdifficulttodetectandonecanhardlydoanythingtopreventit.Inmanycases,
最新回复
(
0
)