首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用VC6或使用【答题】菜单打开考生文件夹proj3 下的工程proj3,其中定义的IntArray是一个用于表示整型一维数组的类。成员函数swap可以将数组中的两个指定元素交换位置;成员函数sort的功能是将数组元素按照升序排序。请编写成员函数sort
请使用VC6或使用【答题】菜单打开考生文件夹proj3 下的工程proj3,其中定义的IntArray是一个用于表示整型一维数组的类。成员函数swap可以将数组中的两个指定元素交换位置;成员函数sort的功能是将数组元素按照升序排序。请编写成员函数sort
admin
2019-04-18
69
问题
请使用VC6或使用【答题】菜单打开考生文件夹proj3 下的工程proj3,其中定义的IntArray是一个用于表示整型一维数组的类。成员函数swap可以将数组中的两个指定元素交换位置;成员函数sort的功能是将数组元素按照升序排序。请编写成员函数sort。在main函数中给出了一组测试数据,此时程序运行中应显示:
读取输入文件…
---排序前---
al=312
a2=5274163
---排序后---
al=123
a2=1234567
要求:
补充编制的内容写在“//**********333**********”与“//**********666**********”之间,不得修改程序的其他部分。
注意:程序最后将结果输出到文件out.dat中。输出函数WriteToFile已经编译为obj文件,并且在本程序中调用。
{/IntArray.h
#include
#include
usingnamespacestd;
classIntArray{
public:
IntArray(unsignedintn)
{
Size=n;
data=newint[size];
}
~IntArray(){delete[]data;}
intgetSize()const{returnsize;}
int&operator[](unsignedinti)
const{returndata
;}
voidswap(inti,intj)
{
inttemp=data
;
data
=data[j];
data[j]=temp;
}
voidsort();
friendostream&operator<<(ostream&os,constIntArray&array)
{
for(inti=0;i
os<
<<’’;
returnos;
}
private:
int*data;
unsignedintsize;
};
voidreadFromFile(constchar*,IntArray&);
voidwriteToFile(char*,constIntArray&);
//main.h
#include
#include"IntArray.h"
voidIntArray::sort()
{
//********333********
//********666********
}
voidreadFromFile(constchar*f,IntArray&m)
{
ifstreaminfile(f);
if(infile.fail()){
cerr<<"打开输入文件失败!";
return;
}
inti=0;
while(!infile.eof()){
infile>>m[i++];
}
}
intmain()
{
IntArraya1(3),a2(7),a3(1000);
a1[0]=3,a1[1]:1,a1[2]=2;
a2[0]=5,a2[1]=2,a2[2]=7,a2[3]
=4,a2[4]=1,a2[5]=6,a2[6]=3;
readFromFile("in.dat",a3),
cout<<"---{j}序前---\n";
cout<<"a1="<
cout<<"a2="<
end1;
a1.sort();
a2.sort();
a3.sort();
cout<<"---排序后---\n";
cout<<"a1="<
cout<<"a2="<
end1;
writeToFile("",a3);
return0;
}
选项
答案
for (int i = 0; i < size; i++) for (int j = i+1; j < size; j++) if (data[i] > data[j]) swap(i, j);
解析
主要考查考生对排序算法的掌握,sort函数的功能是将数组元素按照从小到大的顺序排序。使用for循环遍历数组元素,变量i和j代表数组元素下标,将数组元素i和j进行比较,顺序不对就调用swap函数交换元素。
转载请注明原文地址:https://www.kaotiyun.com/show/npAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
如下程序的输出是#include<iostream>usingnamespacestd;classBase{public:Base(){cout<<"BB";f();}voidf(){cout<
数据独立性是数据库技术的重要特点之一。所谓数据独立性是指
一棵二叉树第6层(根结点为第一层)的结点最多为______个。
关于模板,下列说法不正确的是()
下列函数的功能是判断字符串str是否对称,对称则返回true,否则返回false,则横线处应填上()。Boolfun(char*str){inti=0,j=0;while(str[j])j++;for(j
栈C最多能容纳4个元素,现有6个元素按A、B、C、D、E、F的顺序进栈,下列哪个序列不是可能的出栈序列()。
C++中将两个字符串连接起来组成一个字符串的函数是______。
运算符重载是对已有的运算符赋予多重的含义,所以()。
下面字符串中,不可以用作C++标识符的是()。
对于长度为n的有序线性表,在最坏情况下,二分法查找只需比较______次。
随机试题
生育过严重缺陷患儿的妇女再次妊娠前,应采取的医学措施是
肝胆湿热证的特征是
下列不符合静脉性充血的描述是
支气管炎和肺炎的鉴别,有意义的是
对细菌叶酸代谢呈双重阻断的是既增加降压效果,又减少不良反应的是
按照《保险法》的规定,下列说法中,不正确的是()。
孙老师把没有按时完成作业的学生赶到操场上,让他们在冷风中把作业写完,说要让学生明白学习的艰辛。这说明,孙老师没有做到()。
由于天气逐渐变冷,牧场上的草每天以均匀的速度减少。经计算,牧场上的草可供20头牛吃5天,或供16头牛吃6天。那么可供11头牛吃()天。
Inthefollowingtext,somesentenceshavebeenremoved.ForQuestions41-45,choosethemostsuitableonefromthelist(A、B、C、
ElinorOstromisanAmericanpoliticalscientist.Shewas【B1】______the2009NobelMemorialPrizeinEconomicSciences,whichsh
最新回复
(
0
)