首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请打开考生文件夹下的解决方案文件proj2,此工程包含一个源程序文件proj2.cpp。其中定义了Score类。 Score是一个用于管理考试成绩的类。其中,数据成员一S指向存储成绩的数组,_n表示成绩的个数;成员函数Sort使用冒泡排序法将全部成
请打开考生文件夹下的解决方案文件proj2,此工程包含一个源程序文件proj2.cpp。其中定义了Score类。 Score是一个用于管理考试成绩的类。其中,数据成员一S指向存储成绩的数组,_n表示成绩的个数;成员函数Sort使用冒泡排序法将全部成
admin
2020-04-07
86
问题
请打开考生文件夹下的解决方案文件proj2,此工程包含一个源程序文件proj2.cpp。其中定义了Score类。
Score是一个用于管理考试成绩的类。其中,数据成员一S指向存储成绩的数组,_n表示成绩的个数;成员函数Sort使用冒泡排序法将全部成绩按升序进行排列。
请在程序中的横线处填写适当的代码,然后删除横线,以实现Score类的成员函数Sort。
注意:只在指定位置编写适当代码,不要改动程序中的其他内容,也不要删除或移动“//****found****”。
//proj 2.cpp
#include <iostream>
#include<cstdlib>
#include<ctime>
using namespace std;
class Score{
public:
Score(double * s,int n): _s(s), _n(n) {}
double GetScore(int i)const
{return _s
;}
void Sort();
private:
double * _s;
int _n;
};
void Score::Sort()
{
//********found********
for(int i=0;i< n一1;___________)
//******** found ********
for(int j=__________;j>i;j--)
if(_s[j]< _s[j一1])
{ //交换_s[j]和_s[j一1]
double t=_s[j];
//********found********
_____________;
//******** found ********
___________;
}
}
int main()
{
const int NUN=10;
double s[NUM];
srand(time(0));
for(int i=0;i<NUN;i++)
s
=double(rand())/RAND_MAX * 100;
Score ss(s,NUM);
ss.Sort();
for(int j=0;J<NUM;j++)
cout<<ss.GetScore(j) <<endl;
return 0;
}
选项
答案
(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—1。
(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/Rw8p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
阅读程序段,当输入数据形式为25,13,10时,正确的输出结果为______。intx,y,z;cin>>x>>y>>z;;cout<<"x+y+z=%d\n"<<x+y+z;
有函数charfun(char*p){returnp;}该函数的返回值是()。
下列函数的运行结果是()。#include<iostream.h>intadd(inta,intb);voidmain(){externintx,y;cout<<add(x,y)<
如下程序声明了一个使用两个通用数据类型的模板类dataClass,其中构造函数用于初始化两个数据成员,成员函数show用于输出两个数据成员的数值。#include<iostream>usingnamespaeestd;_
下列程序的输出结果是#include<iostream.h>intmin(inta,intb){if(a<b)returna;elsereturnb;return0;
下面关于类概念的描述中()是错误的。
下面程序输出的结果是()。#include<iostream>usingnamespacestd;intfuc(char*x);intmain(){cout<<fuc("hello")<<
软件工程的出现是由于()。
设x,y,t均为int型变量,执行语句:x=y=3;t=++x||++y;,完成后,y的值为( )。
以下程序的结果是 #include<iostream.h> voidmain() {char*p="abcdefgh",*r; long*q; q=(long*)p; q++; r=(char*)q; co
随机试题
对违约责任者以法律制裁,要求当事人在签订合同时,要考虑( )。
_______是智力发展的基础和自然条件。
项目管理组织结构调整优化的原因包括()
固定资产的特征不包括()。
关于原始凭证填制要求的说法,错误的是()。
过程改进策略包括()。
常用的记分法有_________和_________两种。
A、 B、 C、 D、 C每组中第2、3个图形分别为第1个图形的正视图、俯视图。
Whatdoesthehamburgersayaboutourmodemfoodeconomy?Alot,actually.OverthepastseveralyearsWaldoJaquithintendedto
在信息系统开发方法中,不属于结构化方法指导思想的是
最新回复
(
0
)