首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用VC6或使用【答题】菜单打开考生目录proj3下的工程文件proj3,此工程包含一个源程序文件proj3.epp,其功能是从文本文件in.dat中读取全部整数,将整数序列存放到intArray类的对象myA~ay中,然后对整数序列按非递减排序,最后由
请使用VC6或使用【答题】菜单打开考生目录proj3下的工程文件proj3,此工程包含一个源程序文件proj3.epp,其功能是从文本文件in.dat中读取全部整数,将整数序列存放到intArray类的对象myA~ay中,然后对整数序列按非递减排序,最后由
admin
2019-06-05
72
问题
请使用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://www.kaotiyun.com/show/Bm8p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有如下定义:intb[10]={1,2,3,4,5,6,7,8,9,10},*q=b;则数值为8的表达式是()。A)*q+8B)*(q+7)C)*q+=8D)q+7
在公有派生时,派生类中定义的成员函数只能访问原基类的()。A)私有成员、保护成员和公有成员B)保护成员和私有成员C)公有成员和保护成员D)公有成员和私有成员
执行下列语句序列:imx=1,&y=x;cout<<x<<’-’<<y<<end1;输出结果为______。
A、 B、 C、 D、 C软件的生命周期可分为软件定义、软件开发及软件运行维护三个阶段。其中软件定义阶段的主要工作有可行性研究与计划制订和需求分析等;软件开发阶段的主要工作有概要设计、详细设计和测试等;软件运
有如下语句序列:intx=-10;while(++x){}运行时while循环体的执行次数为______。
C++中的模板分为函数模板和______。
已知类Ben中将二元运算符“/”,重载为友元函数,若c1、c2是Ben的两个对象当使用运算符函数进行显式调用时,与表达式c1/c2等价的表示为______。
软件危机出现于60年代末,为了解决软件危机,人们提出了______的原理来设计软件,这就是软件工程诞生的基础。
在C++语言中,打开一个文件就是将这个文件与一个什么建立关联?
随机试题
粗集料洛杉矶磨耗试验对水泥混凝土集料设定回转次数为()转。
在IS曲线不变的情况下,货币量减少会引起()
Formanypeopletoday,readingisnolongerrelaxation.Tokeepuptheirworktheymustreadletters,reports,tradepublication
包合技术系指一种分子被包藏于另一种分子的空穴结构内,形成包合物的技术。大蒜精油制成包合物后,药物由液态变为白色粉末,这是利用了包合物的哪一特点
背景资料某本地传输网工程,包括线路和设备两部分。光缆沿线与原有光缆、铁路交越。建设单位和施工单位签订了承包合同,合同工期16周;交越过路手续和赔补由建设单位负责,钢管、水泥、沙石由施工单位采购。施工单位提交了初步的施工进度网络计划并得到了建设单位
中国证监会自受理申请文件到作出决定的期限为()个月,自中国证监会核准发行之日起,上市公司应在()个月内发行证券。
某甲从乙商店购买丙厂生产的保温瓶,在正常使用过程中,发生爆炸,某甲胳膊被烫伤。应承担责任的是()。
行使税收征收权的主体是()。
某公司按照“2/20,n/60”的条件从另一公司购入价值1000万的货物,由于资金调度的限制,该公司放弃了获取2%现金折扣的机会,公司为此承担的信用成本率是()。
动作速度是指人体或人体的某一部分快速完成单个动作或成套动作的能力。它是运动员的基本素质之一,在体能训练中有重要地位。根据上述定义,下列不符合动作速度的是:
最新回复
(
0
)