封装一个班级
#include <iostream>
using namespace std;
#define MAX 5
class stu
{
private:
int score[MAX]={};
public:
void put()
{
for(int i=0; i<5; i++)
{
cout<<"请输入成绩:";
cin>>score[i];
}
return;
}
void show()
{
cout<<"输出学生成绩";
for(int i=0; i<MAX; i++)
{
cout<<score[i]<<"\t";
}
cout<<endl;
}
void paixu()
{
for(int i=1; i<MAX; i++)
{
for(int j=0; j<MAX-i; i++)
{
if(score[j]>score[j+1])
{
int temp =score[j];
score[j] = score[j+1];
score[j+1] = temp;
}
}
}
for(int i=0; i<MAX; i++)
{
cout<<score[i]<<"\t";
}
cout<<endl;
return;
}
void my_amx()
{
int min = score[0];
int i;
for( i=0; i< MAX; i++)
{
if(min>score[i])
{
min = score[i];
}
}
cout<<"最小值:"<<min<<endl;
return;
}
void sum()
{
int sum = 0;
int i;
for(i=0; i<MAX; i++)
{
sum+=score[i];
}
cout<<"总分:"<<sum<<endl;
return;
}
};
int main()
{
stu s;
s.put();
s.show();
s.paixu();
s.my_amx();
s.sum()
return 0;
}
封装一个循环顺序队列
#include <iostream>
#include <string>
using namespace std;
#define MAX 20
#define datatype int
class Queue
{
private:
datatype data[MAX];
int front; //对头
int tail; //队尾
public:
void init(int front, int tail);
bool empty();
bool full();
int size();
void push(datatype e);
void pop();
void show();
};
void Queue::init(int front, int tail)
{
this->front = front;
this->tail = tail;
}
bool Queue::empty()
{
return front == tail;
}
bool Queue::full()
{
return (tail+1)%MAX == front;
}
int Queue::size()
{
return (tail+MAX-front)%MAX;
}
void Queue::push(datatype e)
{
if(full())
{
cout<<"失败"<<endl;
}
else
data[tail] = e;
{
tail = (tail+1)%MAX;
return;
}
}
void Queue::pop()
{
cout<<"出栈:"<<data[front];
front = (front+1)%MAX;
}
void Queue::show()
{
if(!empty())
{
for(int i=front; i != tail; i=(i+1)%MAX)
{
cout<<data[i]<<"\t";
}
cout<<endl;
return;
}
else
{
return;
}
}
int main()
{
Queue s;
s.init(0, 0);
s.push(2);
s.push(5);
s.push(4);
s.push(8);
s.push(9);
s.pop();
s.show();
cout<<"size: "<<s.size()<<endl;
return 0;
}