首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请打开考生文件夹下的解决方案文件proj2,此工程包含一个源程序文件proj2.cpp。其中定义了Score类。 Score是一个用于管理考试成绩的类。其中,数据成员_s指向存储成绩的数组,_n表示成绩的个数;成员函数Sort使用冒泡排序法将全部成
请打开考生文件夹下的解决方案文件proj2,此工程包含一个源程序文件proj2.cpp。其中定义了Score类。 Score是一个用于管理考试成绩的类。其中,数据成员_s指向存储成绩的数组,_n表示成绩的个数;成员函数Sort使用冒泡排序法将全部成
admin
2019-04-24
56
问题
请打开考生文件夹下的解决方案文件proj2,此工程包含一个源程序文件proj2.cpp。其中定义了Score类。
Score是一个用于管理考试成绩的类。其中,数据成员_s指向存储成绩的数组,_n表示成绩的个数;成员函数Sort使用冒泡排序法将全部成绩按升序进行排列。
请在程序中的横线处填写适当的代码,然后删除横线,以实现Score类的成员函数Sort。
注意:只在指定位置编写适当代码,不要改动程序中的其他内容,也不要删除或移动“//****found****”。
1 //proj2.cpp
2 #include
3 #include
4 #include
5 using namespace std;
6 class Score {
7 public:
8 Score(double * s, int n) : s(s), n(n) {}
9 double GetScore(int i)const
10 {return s
;}
11 void Sort();
12 private:
13 double*s;
14 int;n ;
15 };
16 void Score::Sort()
17 {
18 //********found********
19 for(int i=0 ; i<_n-1;____________)
20 //********found********
21 for(int j=___________;j>i;j--)
22 if ( s[j] < s[j-1] )
23 { //交换 s[j]和 s[j-1]
24 double t=s[j];
25 //********found********
26 __________;
27 //********found********
28 ____________;
29 }
30 }
31
32 int main()
33 {
34 const int NUH=10;
35 double s[NUM];
36 srand(time(0));
37 for(int i=0 ; i
38 s
=double(rand())/RAND_MAX * 100 ;
39 score ss(s,NUM);
40 ss.Sort();
41 for(int j=0;j
42 cout<
43 return 0;
44 }
选项
答案
(1)i++ (2)_n—1 (3)_s[j]=_s[j一1] (4)_s[j一1]=t
解析
(1)主要考查for循环语句,从题目要求可知循环变量i要从0到_n一2,因此i要递增操作,即i++。
(2)主要考查考生对冒泡排序的掌握,这里要求从后往前扫描,比较相邻两个元素,若后者小则交换,因此在这里下标j要从最后开始,即int j=_n—。
(3)考查交换算法,在if语句中_s[j]<_s[j—1]满足条件,则实现交换。因为已经把_s[j]的值赋给了中间变量t,所以这里要把_s[j—1]的值赋给_s[j],即_s[j]=_s[j—1];。
(4)考查交换算法,这里只需把中间变量t中的值赋给_s[j—1]即可。
转载请注明原文地址:https://kaotiyun.com/show/QOAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下面的函数利用递归实现了求1+2+3+…+n的功能:intsum(intn){if(n==0)return0;elsereturnn+saln(n-1);}在执行SUm(10)的过程中,递归调用s
有如下程序段:for(inti=i;i<=50;i++){if(i%31=0)continue;elseif(i%51=0)continue;cout<<i<<",";这个程序的输出结果是_____
定义如下枚举类型:enum{Monday,Tuesday,Wednesday,Thrusday,Friday=2};表达式Wednesday==Friday的值是()。
数据流图中带有箭头的线段表示的是()
一个在基类中说明的虚函数,它在该基类中没有定义,但要求任何派生类都必须定义自己的版本,此虚函数又称______。
有如下程序:#include<iostream>usingnamespacestd;classTestClass1{public:virtualvoidfun(){cout<<"1";}};
如下函数的作用是以双倍行距输出文件:voiddouble_space(ifstream&f,ofstream&t){charc;while(______){______;if(c==’\n’)t.put(c)
语句int*p=&k;定义了指针p,与这个语句等效的语句序列是
下列字符串中不能作为C++标识符使用的是
A、 B、 C、 D、 Dc++语言中析构函数为符号“~”加类名,且析构函数没有返回值和参数,故前不加void关键字。所以正确的形式应该是~Myclass()。
随机试题
部门的劳动生产率提高后,单位商品的价值量()
全身适应综合征分为_______、_______、_______3期。
主动脉窦瘤破裂与主动脉左室隧道的相同点为
26岁初产妇,妊娠40周,规律宫缩8小时入院。查:髂棘间径25cm,骶耻外径20cm,坐骨结节间径7.5cm。ROA,胎心134次/min。阴道检查宫口开大4cm,胎头平棘。3小时后产妇呼叫腹痛难忍,检查宫缩1~2分钟1次,持续45秒,月心102次/min
A.1年B.2年C.7天D.14天E.30天处方一般不得超过几天的用量
为减少药物经济学研究中出现的混杂偏倚,可采用的方法有
阿兹特克文化
下列描述中,属于面向对象思想主要特征的是()。
Whyisthestudyimportanttohuman?
Asascourgeofthemodernsociety,obesityhasbecometheworld’sbiggestpublic-healthissuetoday—themaincauseofheartd
最新回复
(
0
)