首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,完成空出部门的程序。实现函数sort(int A[],int n),用冒泡法将数组排序。 提示:所谓冒泡法,就是每次把相邻的两个数交换,较大的数交换到后面。这样下标从
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,完成空出部门的程序。实现函数sort(int A[],int n),用冒泡法将数组排序。 提示:所谓冒泡法,就是每次把相邻的两个数交换,较大的数交换到后面。这样下标从
admin
2018-10-23
46
问题
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,完成空出部门的程序。实现函数sort(int A[],int n),用冒泡法将数组排序。
提示:所谓冒泡法,就是每次把相邻的两个数交换,较大的数交换到后面。这样下标从0到n-1的数与其后面相邻的数交换,可以把最大的数交换到数组的末端。进行n次下标从0到n-1的交换,则数组则会变成有序的,而且是由大到小的顺序。
注意:不能修改程序的其他部分,并且不能删除其他的部分,也不能修改程序的结构。
1 #include<iostream.h>
2 #define N 10
3 void sort(int A[N],int n)
4 {
5
6 }
7 int main()
8 {
9 int A[N]={5,7,4,6,10,13,78,-4,9,20};
10 sort(A,10);
11 for(int i=0;i<sizeof(A)/sizeof(int);i++)
12 {
13 cout<<A
<<’ ’;
14 }
15 cout<<end1;
16 return 0;
17 }
选项
答案
1 int i,j,k,t; 2 for(i=0;i<n-1;i++) 3 { 4 for(k=i,j=i+1;j<n;j++) 5 if(A[k]<A[j])//如果前面的比后面的小则需要交换 5 k=j; 7 if(k!=i) //交换 8 { 9 t=A[i]; 10 A[i]=A[k]; 11 A[k]=k; 12 } 13 }
解析
函数sort(int A[],int n)用冒泡排序法把数组进行从大到小的排序,冒泡法排序利用了求数组中最小值及其位置的算法,首先从n个数中找出最大值,放在第一个元素位置上,再从剩下的n-1个数中找出最大值,放在第二个元素位置上,这样不断重复下去,直到剩下最后一个数。
(1)以数组“A[]={3,8,7,6,5,0,1,2,9,4}”为例来说明具体的排序过程,第一次选择:第一步从A[0]-A[9]中找最大值max及下标k,max=9,k=8;第二步交换a[0]与最大值a[8]的值;第一次结束后a[0]已存放了最大值,下一次比较就不必再经过它了,而从a[1]开始,如此循环。从例中可以看出10个元素要进行九次比较,n个元素要进行n-1次比较。设置两层循环,外层循环变量i从0到n-1,内层循环变量从i开始到n-1,在内层循环中找最大值,如果最大值的下标k和i不同,则交换,实现选择法排序。
(2)在内层循环体内,如果最大值的下标k和i不同,则用一个临时变量记录第i个元素,然后将第k个元素赋值给第i个元素,临时变量值赋给第k个元素,如此完成两个元素的交换。
转载请注明原文地址:https://www.kaotiyun.com/show/fwAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
程序的3种基本控制结构是
在下面横线上填上适当的语句,完成程序。#include<iostream>usingnamespacestd;classBase{intx;public:Base(int0{x=i;}~B
下列程序的运行结果是______。#include<iostream.h>classBase{public:voidf(intx){cout<<“Base:”<<x<<endl;});classDe
下列关于结构化程序设计原则和方法的描述中,错误的是()。
下列关于构造函数和析构函数的描述,错误的是()。
已知类Myst有一个只需要一个double型参数的构造函数,且将运算符“-”重载为友元函数。要使语句序列()。Mystx(3.2),y(5.5),z(0.0);z=8.9-y;y=x-6.3;能够正常运行,运算符
如下程序编译时发生错误,错误的原因是show函数实现语句错误,则正确的语句应该为______。#include<iostream.h>classtest{private:inthum;public
设有基类定义:classCbase{private:inta;protected:intb;public:intc;};派生类采用何种继承方式可以使成员变量b成为自己的私有
在算法的4个特性中,算法必须能在执行有限个步骤之后终止指的算法的特性。
在表达式x-y中,"-"是作为非成员函数重载的运算符。若使用显式的函数调用代替直接使用运算符"-",这个表达式还可以表示为
随机试题
萨迪的代表作有
有关肺鳞癌的描述中,哪项是错误的:
下列不属于上皮来源的良性肿瘤是
A.同情患者B.对待患者一视同仁C.保守患者的秘密和隐私D.选择对患者、对社会均有利的医疗卫生保健措施E.在诊治活动中杜绝有意和责任性伤害上列各项中,能体现医生恪守尊重原则的是
A.目B.舌C.口D.鼻E.耳脾开窍于
王某2004年取得特许权使用费两次,一次收入为5000元,另一次收入为2500元,王某取得的特许权使用费应纳的个人所得税( )元。
以语言技能、语言知识、情感态度、学习策略和______等五个方面共同构成的英语课程总目标,既体现了英语学习的工具性,也体现了其______。
19世纪晚期和20世纪早期,物理学发生的革命性变化,不包括()。
作为一个古老的复兴的东方大国,对西方来说,中国很神秘,就像当年马可.波罗到中国以后的描写:遍地是黄金,到处是白银。西方人看了游记,只是觉得中国很富有,但到底怎么富有,就只有靠想象了。现在,西方看中国,真实的成分有,想象的成分也不少。这段文字主要说明了(
Amarketiscommonlythoughtofasaplacewherecommoditiesareboughtandsold.Thusfruitandvegetablesaresoldwholesale
最新回复
(
0
)