c++疑惑 [Error] ld returned 1 exit status 代码是二级题库中c++的正确答案,不知道为什么devc++会报错
#ifndefINTEGERS#defineINTEGERS#include<iostream>usingnamespacestd;constintMAXELEMENTS...
#ifndef INTEGERS
#define INTEGERS
#include<iostream>
using namespace std;
const int MAXELEMENTS=100; //集合最多可拥有的元素个数
class Integers{
int elem[MAXELEMENTS]; //用于存放集合元素的数组
int counter; //用于记录集合中元素个数的计数器
public:
Integers(): counter(0){} //创建一个空集合
Integers(int data[], int size); //利用数组提供的数据创建一个整数集合
void add(int element); //添加一个元素到集合中
void remove(int element); //删除集合中指定的元素
int getCount()const{ return counter;} //返回集合中元素的个数
int getElement(int i)const{ return elem[i];} //返回集合中指定的元素
void sort(); //将集合中的整数按由小到大的次序进行排序
void show()const; //显示集合中的全部元素
};
void writeToFile(const char *path);
#endif
#include"Integers.h"
#include<iomanip>
Integers::Integers(int data[], int size): counter(0){
for(int i=0; i<size; i++) add(data[i]);
}
void Integers::add(int element){
if(counter<MAXELEMENTS) elem[counter++]=element;
}
void Integers::remove(int element){
int j;
for(j=counter-1; j>=0; j--)
if(elem[j]==element) break;
for(int i=j; i<counter-1; i++) elem[i]=elem[i+1];
counter--;
}
void Integers::sort(){
//********333********
for (int i = 0; i < counter; i++)
for (int j = counter -1; j > i; j--)
if (elem[i] > elem[j])
{
int temp = elem[i];
elem[i] = elem[j];
elem[j] = temp;
}
//********666********
}
void Integers::show()const{
for(int i=0; i<getCount(); i++)
cout<<setw(4)<<getElement(i);
cout<<endl;
}
int main(){
int d[]={5,28,2,4,5,3,2,75,27,66,31};
Integers s(d,11); s.show();
s.add(6); s.show();
s.add(19); s.show();
s.remove(2); s.show();
s.add(4); s.show();
s.sort(); s.show();
writeToFile("");
return 0;
} 展开
#define INTEGERS
#include<iostream>
using namespace std;
const int MAXELEMENTS=100; //集合最多可拥有的元素个数
class Integers{
int elem[MAXELEMENTS]; //用于存放集合元素的数组
int counter; //用于记录集合中元素个数的计数器
public:
Integers(): counter(0){} //创建一个空集合
Integers(int data[], int size); //利用数组提供的数据创建一个整数集合
void add(int element); //添加一个元素到集合中
void remove(int element); //删除集合中指定的元素
int getCount()const{ return counter;} //返回集合中元素的个数
int getElement(int i)const{ return elem[i];} //返回集合中指定的元素
void sort(); //将集合中的整数按由小到大的次序进行排序
void show()const; //显示集合中的全部元素
};
void writeToFile(const char *path);
#endif
#include"Integers.h"
#include<iomanip>
Integers::Integers(int data[], int size): counter(0){
for(int i=0; i<size; i++) add(data[i]);
}
void Integers::add(int element){
if(counter<MAXELEMENTS) elem[counter++]=element;
}
void Integers::remove(int element){
int j;
for(j=counter-1; j>=0; j--)
if(elem[j]==element) break;
for(int i=j; i<counter-1; i++) elem[i]=elem[i+1];
counter--;
}
void Integers::sort(){
//********333********
for (int i = 0; i < counter; i++)
for (int j = counter -1; j > i; j--)
if (elem[i] > elem[j])
{
int temp = elem[i];
elem[i] = elem[j];
elem[j] = temp;
}
//********666********
}
void Integers::show()const{
for(int i=0; i<getCount(); i++)
cout<<setw(4)<<getElement(i);
cout<<endl;
}
int main(){
int d[]={5,28,2,4,5,3,2,75,27,66,31};
Integers s(d,11); s.show();
s.add(6); s.show();
s.add(19); s.show();
s.remove(2); s.show();
s.add(4); s.show();
s.sort(); s.show();
writeToFile("");
return 0;
} 展开
1个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询