首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用VC6或使用【答题】菜单打开考生目录proj3下的工程文件proj3,此工程包含一个源程序文件proj3.epp,其功能是从文本文件in.dat中读取全部整数,将整数序列存放到intArray类的对象myA~ay中,然后对整数序列按非递减排序,最后由
请使用VC6或使用【答题】菜单打开考生目录proj3下的工程文件proj3,此工程包含一个源程序文件proj3.epp,其功能是从文本文件in.dat中读取全部整数,将整数序列存放到intArray类的对象myA~ay中,然后对整数序列按非递减排序,最后由
admin
2019-06-05
43
问题
请使用VC6或使用【答题】菜单打开考生目录proj3下的工程文件proj3,此工程包含一个源程序文件proj3.epp,其功能是从文本文件in.dat中读取全部整数,将整数序列存放到intArray类的对象myA~ay中,然后对整数序列按非递减排序,最后由函数writeToFile选择序列中的部分数据输出到文件out.dat中。文件in.dat中的整数个数不大于300个。
要求:
补充编制的内容写在“//**********333**********”与“//**********666**********”两行之间。实现对整数序列按非递减排序,并将排序结果在屏幕上输出。不得修改程序的其他部分。
注意:程序最后已将结果输出到文件out.dat中。输出函数writeToFile已经给出并且调用。
//proj 3.cpp
#include
#include
#include
using namespace std;
class intArray
{
private:
int*array;//整数序列首地址
int length;//序列中的整数个数
public:
//构造函数,从文件中读取数据用于初始化新对象。参数是文件名
intArray(char*filename);
void sort();//对整数序列按非递减排序
一intArray();
void writeToFi le(char*fi lename);
);
intArray::intArray(char*filename)
{
ifstream myFile(filename);
int len=300;
array=new int[1en];
length=0;
while(myFile>>array[1ength++]);
length一一;
myFile.close();
}
void intArray::sort(){
//**********333**********
//**********666**********
}
intArray::intArray()
{
delete[]array;
}
void intArray::writeToFile(char。
filename)
{
int step=0;
ofstream outFile(filename);
for(int i=0;i
{
outFile<
<
step++;
}
outFile.close();
}
void main()
{
intArray myArray(”in.dat”);
myArray.sort();
myArray.writeToFile(”out.dat”);
}
选项
答案
for(int i=0;i
array[j]) //如果 arrag[i]>array[j],把array[i]与ar— ray[i]进行对换 { int temp; //定义一个临时变 量temp temp=array[i];//把array [i]值放到变量temp array[i]=array[j];//把 array[j]值赋给array[i] array[j] =terap; //把变量temp存放在值array[j]中 } for(int a:0;a
解析
本题主要考查intArray类,其中涉及构造函数、排序函数和析构函数。常用的排序算法有冒泡排序、选择排序、插入排序、堆排序等。
【解题思路】题目要求对整数序列按非递减排序,要排序就必须要有比较,因此定义两个下标i和j,按题目非递减排序要求,当array
比array[j]大时就交换其值,利用中间变量temp来实现。
【解题宝典】排序算法有多种,其基本思想是相同的,即先遍历,后比较,再交换。不同之处在于它们遍历数列的顺序不同。考生可选择一至两种算法重点理解。
转载请注明原文地址:https://kaotiyun.com/show/Bm8p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下列哪种数据模型可以用树形结构来表示实体之间联系()。A)网状模型B)数据模型C)关系模型D)层次模型
执行下列语句序列:imx=1,&y=x;cout<<x<<’-’<<y<<end1;输出结果为______。
A、 B、 C、 D、 C软件的生命周期可分为软件定义、软件开发及软件运行维护三个阶段。其中软件定义阶段的主要工作有可行性研究与计划制订和需求分析等;软件开发阶段的主要工作有概要设计、详细设计和测试等;软件运
A、 B、 C、 D、 B常用的软件结构设计工具是结构图,也称程序结构图。DFD图(数据流图)是以图形的方式描述数据在系统中流动和处理的过程,只反映系统必须完成的逻辑功能,它是需求分析阶段的图形工具。盒式图(
下列程序的输出结果为12.324.6,请将横线处的缺失部分补充完整。#include<iostream>usingnamespacestd;classBase{public:Base(intA):id
负责数据库中查询操作的数据库语言是()。A)数据定义语言B)数据管理语言C)数据操纵语言D)数据控制语言
有如下两个类声明classAA{public:intm;};classBB:protectedAA{intn;};在类BB中,数据成员m的访问属性是_____,数据成员n
软件危机出现于60年代末,为了解决软件危机,人们提出了______的原理来设计软件,这就是软件工程诞生的基础。
在C++语言中,打开一个文件就是将这个文件与一个什么建立关联?
假设线性表的长度为n,则在最坏情况下,冒泡排序需要的比较次数为
随机试题
横断层面上识别胰尾的标志性结构
肝硬化患者侧支循环形成时最重要交通支是
A、主要含香豆素类成分B、主要含木脂素类成分C、主要含三萜皂苷类成分D、主要含甾体皂苷类成分E、主要含挥发油五味子
编制费用计划过程中最重要的方法,就是()的分解。
FIDIC合同规定,工程接收证书的颁发,表明了()。
关于单价合同说法正确的是()。
下列对金融工具现货交易与期货交易的交易方式和结算方式的表述错误的是( )。
教师的任用方式一般有三种,它们是派用制、聘用制和()。
下列词语没有错别字的一项是()
设有定义:chars[81];inti=0;以下不能将一行(不超过80个字符)带有空格的字符串正确读入的语句或语句组是()。
最新回复
(
0
)