首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请打开考生文件夹下的解决方案文件proj3,此工程包含一个源程序文件proj3.cpp,其功能是从文本文件in.dat中读取全部整数,将整数序列存放到intArray类的对象myArray中,然后对整数序列按非递减排序,最后由函数writeToFile选择
请打开考生文件夹下的解决方案文件proj3,此工程包含一个源程序文件proj3.cpp,其功能是从文本文件in.dat中读取全部整数,将整数序列存放到intArray类的对象myArray中,然后对整数序列按非递减排序,最后由函数writeToFile选择
admin
2020-06-29
75
问题
请打开考生文件夹下的解决方案文件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)
{
ifstream myFile(filename);
int len=300;
array=new int[len];
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
<<endl;
step++;
}
outFile.close();
}
void main()
{
intArray myArray("in.dat");
myArray.sort();
myArray.writeToFile("out.dat");
}
选项
答案
for(int i =0;i <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=a rray[i]; //把array[i]值放到变量temparray[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,按题目非递减排序要求,当atTay
比array[j]大时就交换其值,利用中间变量temp来实现。
转载请注明原文地址:https://kaotiyun.com/show/ZO8p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
在C++程序中,如果要求通过函数来实现一种简单的功能,并且要求尽可能加快程序执行速度,则应该选用()。
使用VC6打开考生文件夹下的源程序文件modi3.cpp,其中定义了类baseA、priAl和priA2,其中priAl类由baseA类公有派生,priA2类由priAl类公有派生。上述三个类的定义并不完整,请按要求完成下列操作,将程序补充完整。
使用VC6打开考生文件夹下的源程序文件modil.cpp,但该程序运行时有错,请改正程序中的错误,使程序输出的结果为:Thisisagreart!HelloHello注意:错误的语句在//********err
若MyClass为一个类,执行语句"MyClassa[4],*p[5];"时会自动调用该类构造函数的次数是
软件生命周期中的活动不包括( )。
要将前缀运算符--重载为Incr的非成员函数,下列原型中,可作为该重载函数原型的是
设循环队列为Q(1:m),其初始状态为front=rear=m。经过一系列入队与退队运算后,front=30,rear=10。现要在该循环队列中作顺序查找,最坏情况下需要比较的次数为
在对函数进行原型声明时,下列语法成分中不需要的是
某二叉树有5个度为2的结点,则该二叉树中的叶子结点数是( )。
某二叉树共有845个结点,其中叶子结点有45个,则度为1的结点数为
随机试题
下列疫苗哪些是减毒活疫苗
脑脊液中葡萄糖含量减少最明显的是
患者,女,30岁。停经15周,不规则阴道流血10余天。妇科检查:子宫6个月妊娠大,软、饱满。超声多普勒未探及胎心,尿hCG(+)。该患者初步诊断为葡萄胎,立即给与清宫处理。葡萄胎清宫术后4个月,该患者出现阴道出血,超声检查发现子宫内广泛的肌层内肿瘤血管
化妆品最常见的不良影响是引起
单位内部会计监督的对象是单位的经济活动。()
在漫长的封建社会,我国社会被分割成许许多多封闭性小范围,社会秩序主要靠区域自治和宗族管理。那时候,人的活动范围很小,周围的人不是亲属、本家就是乡邻,人们的行为到处受到监督,有谁的行为太出格了,他在乡里就会抬不起头,站不住脚。现在的情况不同了,人口在全国范围
下列有关“大脑”、“芯片”的描述不符合原文意思的一项是()。对“善于生发的评论家认为它拉开了人类从外部控制大脑及动物行为的序幕”这句话理解正确的一项是()。
从所给的四个选项中,选择最合适的一个填入问号处,使之呈现一定的规律性。
"TheancientHawaiiansareastronomers",wroteQueenLiliuokalani,Hawaii’slastreigningmonarch,in1897.Starwatcherswerea
昨天我七点起床,八点离开家去学校,9:30才到,迟到了一个小时,老师很生气。学校几点上课?
最新回复
(
0
)