C++ Logo
C++二级在线二级在线
首页选择题程序题成为会员帮助其他科目

数组排序器

请修改编辑器中的代码,完成以下功能:在给定的程序中,定义一个名为 XArray 的类,该类包含一个成员函数 sort()。此函数的作用是对类中的整数数组进行升序排序。请将ERROR标记后的void sort();声明替换为完整类内定义;也可保留声明,并在类定义之后、main之前提供void XArray::sort()的类外定义。程序没有两个指定区间标记。程序不需要读取输入,数组的初始值已在代码中给定。 输出示例: Before sorting: 5 2 8 1 9 3 After sorting: 1 2 3 5 8 9

#include<iostream>
#include<string>
using namespace std;

class XArray {  //数组类
private:
	int *a;
    int size;
public:
    XArray(int b[], int len): size(len) //构造函数
	{        
		a = new int[size];
		for(int i = 0; i < size; i++) {
			a[i] = b[i];
		}
	}
	
	//ERROR**********found**********
	// 请实现sort函数,对数组进行升序排序
	void sort();
	
	void show() const {
		for(int i = 0; i < size; i++) {
			cout << a[i] << " ";
		}
		cout << endl;
	}
	
	int length() const { 
		return size; 
	}
 
	~XArray() {
		delete[] a;
	}
};

int main()
{
    int testArray[] = {5, 2, 8, 1, 9, 3};
    XArray arr(testArray, 6);
    
    cout << "Before sorting: ";
    arr.show();
    
    arr.sort();
    
    cout << "After sorting: ";
    arr.show();
    
    return 0;
}

控制台

调试终端

准备就绪