改错?
#include<iostream>
using namespace std;
class array
{
public:
array(int a[10])
{
for(int i=0;i<10;i++)
c[i]=a[i];
}
void disp()
{
for(int i=0;i<5;i++)
{
cout<<c<<" ";
}
cout<<endl;
}
void compare();
private:
int c[10];
};
void array::compare()
{
int temp,j,i;
j=10-1;
while(i!=j)
{
for(i=0;i<j;i++)
{
if(c[i]>c[i+1])
{
temp = c[i];
c[i] = c[i+1];
c[i+1] =temp;
}
}
j--;
}
}
void main()
{
int b[10];
for(int i=0;i <10;i++)
{
cin>>b[i];
}
array a1(b);
a1.compare();
a1.disp();
}
[解决办法]
#include<iostream>using namespace std;class array{public:array(int a[10]){for(int i=0;i<10;i++)c[i]=a[i];} void disp(){for(int i=0;i<5;i++){ cout<<c[i]<<" "; //输出应该为c[i]才对吧}cout<<endl;} void compare();private: int c[10];};void array::compare(){ int temp,j,i; j=10-1; while(j>=0) //改j>=0 { for(i=0;i<j;i++) { if(c[i]>c[i+1]) { temp = c[i]; c[i] = c[i+1]; c[i+1] =temp; } } j--; } }void main(){ int b[10];for(int i=0;i <10;i++){cin>>b[i];}array a1(b); a1.compare();a1.disp();}