首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用VC6或使用【答题】菜单打开考生目录proj3下的工程文件proj3,此工程包含一个源程序文件proj3.cpp,其功能是从文本文件in.dat中读取全部整数,将整数序列存放到intArray类的对象myArray中,然后对整数序列按非递减排序,最后
请使用VC6或使用【答题】菜单打开考生目录proj3下的工程文件proj3,此工程包含一个源程序文件proj3.cpp,其功能是从文本文件in.dat中读取全部整数,将整数序列存放到intArray类的对象myArray中,然后对整数序列按非递减排序,最后
admin
2017-02-21
67
问题
请使用VC6或使用【答题】菜单打开考生目录proj3下的工程文件proj3,此工程包含一个源程序文件proj3.cpp,其功能是从文本文件in.dat中读取全部整数,将整数序列存放到intArray类的对象myArray中,然后对整数序列按非递减排序,最后由函数writeToFile选择序列中的部分数据输出到文件out.dat中。文件in.dat中的整数个数不大于300个。
要求:
补充编制的内容写在“//**********333**********”与“//********666********”两行之间。实现对整数序列按非递减排序,并将排序结果在屏幕上输出。不得修改程序的其他部分。
注意:程序最后已将结果输出到文件out.dat中。输出函数writeToFile已经给出并且调用。
//proj 3.cpp
#include<iostream>
#include<fstream>
#include<cstring>
USing namespace std;
class intArray
{
private:
int *array;//整数序列首地址
int length;//序列中的整数个数
public:
//构造函数,从文件中读取数据用于初始化新对象。参数是文件名
intArray(char *filename);
void sort();//对整数序列按非递减排序
~intArray();
void writeToFile (char *filename);
};
intArray∷intArray(char *
filename)
{
i fstream myFile(filename);
int len=300;
array=new int[fen];
length=0;
while(myFile>>array[length++]);
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<length;i=i+step)
{
outFile<<array
<<end1;
step++;
}
outFile.close();
}
void main()
{
intArray myArray("in.dat");
myArray.sort();
myArray.writeToFi le("out.dat");
}
选项
答案
for(int i=0;1<length;++i) //遍历整个数组 for(int j=i;j<length;++j) //从i++遍历整数组 if(array[i]>array[j]) //如果arrag[i]>array[j],把array[i]与array[i]进行对换 { int temp; //定义一个临时变量temp temp=array[i]; //把array[i]值放到变量temp array[i]=array[j]; //把array[j]值赋给array[i] array[j]=temp; //把变量temp存放在值array[j]中 } for(int a=0;a<length;++a) //遍历数组,把数组中的所有元素打印到控制台上 cout<<array[a]<<" ";
解析
题目要求对整数序列按非递减排序,要排序就必须要有比较,因此定义两个下标i和j,按题目非递减排序要求,当array
比array[j]大时就交换其值,利用中间变量temp来实现。
转载请注明原文地址:https://kaotiyun.com/show/U6Ap777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
排序是计算机程序设计中的一种重要操作,常见的排序方法有插入排序、【】和选择排序等。
下列C++标点符号中表示一条预处理命令开始的是()。
有如下类的定义,下划线处的语句是()。classMyClass{______intx,y;public;MyClass(inta=0,intb=0)
在下面程序横线处填上适当内容,以使该程序执行结果为4.4。#include<iostream>usingnamespacestd;template<typenameT>Taverage(T*datA)
下面的语句中错误的是
下列数据结构中,能直接使用堆排序法进行排序的是
若需要定义一个标识符常量,并且使得C++能够进行类型检查,则应在定义语句的开始使用保留字【 】。
在结构化设计方法中,数据流图表达了问题中的数据流与加工之间的关系,并且,每一个【 】实际上对应一个处理模块。
以下各选项组中,均是C++语言关键字的组是
写出执行完下列代码段之后指定变量的值:boolx=true,y=false,z=false;x=x&&y||z;y=x||y&&z;z=!(x!=y)||(y==z);则x=false,y=【】,z=【
随机试题
下列对阿司匹林水杨酸反应的叙述,错误的是
出票人签发支付密码错误的支票,开户银行将处以按票面金额的5%但不低于()罚款。
( )是经济法坚持的原则。
以非现金资产进行债务重组时,债权人对于接受抵债资产过程中发生的运杂费、保险费等相关费用,应计入()。
出版社在年度出版计划已经审核、备案后还要增补选题,如果()将受到行政处罚。
阅读关于“台湾省”的图文资料,按要求完成教学设计任务。材料一《义务教育地理课程标准(2011年版)》中的内容标准要求:“认识台湾省自古以来一直是祖国不可分割的神圣领土;在地图上指出台湾省的位置和范围,分析其自然地理环境和经济发展特色。”材料二某
一、注意事项1.申论考试是对应考者阅读能力、综合分析能力、提出和解决问题能力、文字表达能力的测试。2.参考时限:阅读资料40分钟,参考作答110分钟。3.仔细阅读给定资料,按照后面提出的“作答要求”作答。二、给定资料1.沱
Telecommuting—substitutingthecomputerforthetriptothejob—hasbeenhailedasasolutiontoallkindsofproblemsrelatedt
距离债券到期时间的长短与债券价格的波动幅度之间的关系是()。
MigrantWorkersInthepasttwentyyears,therehasbeenanincreasingtendencyforworkerstomovefromonecountrytoanot
最新回复
(
0
)