首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用VC6或使用【答题】菜单打开考生文件夹proj3 下的工程proj3,其中定义的IntArray是一个用于表示整型一维数组的类。成员函数swap可以将数组中的两个指定元素交换位置;成员函数sort的功能是将数组元素按照升序排序。请编写成员函数sort
请使用VC6或使用【答题】菜单打开考生文件夹proj3 下的工程proj3,其中定义的IntArray是一个用于表示整型一维数组的类。成员函数swap可以将数组中的两个指定元素交换位置;成员函数sort的功能是将数组元素按照升序排序。请编写成员函数sort
admin
2019-04-18
68
问题
请使用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://kaotiyun.com/show/npAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有如下类定义:classSample{public:Sample();~Sample();private:Staticintdate:};将静态数据成员data初始化
下列叙述中正确的是
若磁盘上已存全路径文件名为c:\ctest\test.txt的文件,下面语句中不能打开该文件的是()。
有如下类说明:classTestClass{intx;public:TestClass(intn){x=n;}};classTestClass1:publicTestClass{inty;
有如下程序:#include<iostream>usingnamespacestd;classA{public:A(){cout<<"A";}};classB{public:B(){c
有如下类定义,请将Sample类的复制构造函数补充完整。classSample{public:Sample(){}~Sample(){if(P)deleteP;)Sample(constSamp
下列选项中,与实现运行时多态性无关的是
按照标识符的要求,下列选项中,()符号不能组成标识符。
下列关于栈的叙述中,正确的选项是()。A)在栈中只能删除数据B)在栈中只能插入数据C)栈是先进先出的线性表D)栈是先进后出的线性表
定义无符号整数类为UInt,下面可以作为类UInt实例化值的是()。A)-369B)369C)0.369D)整数集合{1,2,3,4,5}
随机试题
设立金融资产管理公司的目的是什么?
A.磁共振成像B.CT扫描C.骨ECTD.活检E.免疫组化能准确显示鼻窦肿瘤病变范围并可鉴别肿瘤和炎症的诊断方法是
对鉴别伤寒与败血症最有意义的是()
植被破坏的生态补偿量不应少于破坏量,具体补偿量确定原则为()。
关于合同定金的说法,正确的有( )。
甲公司有关短期投资业务如下:(1)甲公司于2005年3月10日购入乙公司股票,实际支付价款为302万元,其中2万元为已宣告但尚未支付的现金股利。(2)2005年4月10日,乙公司分派现金股利,甲公司收到上述已宣告的现金股利2万元。(
可燃冰是一种洁净的新能源。关于可燃冰,下列说法不正确的是()。
关于网络操作系统的描述中,正确的是()。
设有下面程序代码:PrivateSubCommand1_Click()DimaAsVarianta=Array(22,43,23,56,87,45,67,12,98,98,56,34,23,75
自己紹介は________いいと言われていますね。
最新回复
(
0
)