?? lei.h
字號:
#include <iostream.h>
class Note //box[i].element[j]--第i個箱子第j個元素
{
friend class Box;
public:
Note(int c=20);
~Note(){delete []element;}
protected:
private:
int *element;
int Maxsize,count; //每個箱子里數(shù)目的個數(shù)——count
};
Note::Note(int c/* =20 */)
{
Maxsize=c;
element=new int [Maxsize];
count=0;
}
class Box //箱子0,1,2,3,4,5,6,7,8,9
{
public:
Box(int n=10){num=n;box=new Note[num];}
~Box(){delete []box;}
void Clear();
void PaiXu(int *a,int n,int how_m,int mod=1);//一次排序 how_m--位數(shù)
protected:
private:
Note *box;
int num; //箱子個數(shù)---number
};
void Box::Clear() //將箱子清空
{
for (int i=0;i<num;i++)
{
box[i].count=0;
}
}
void Box::PaiXu(int *a,int n,int how_m,int mod)
{
if(how_m==0) return;
for (int inc_box=0;inc_box<num;inc_box++)
{
for (int ii=0;ii<n;ii++)
{
if (inc_box==a[ii]%(10*mod)/mod)
{
box[inc_box].element[box[inc_box].count]=a[ii];
box[inc_box].count++;
}
}
}
int change_i=0;
for (int i=0;i<num;i++)
{
for (int jj=0;jj<box[i].count;jj++)
{
cout<<(a[change_i]=box[i].element[jj])<<" ";
change_i++;
if (change_i%10==0)
{
cout<<endl;
}
}
}
cout<<endl<<endl;
mod*=10;
Clear();
how_m--;
PaiXu(a,n,how_m,mod);
}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -