prog12.cpp

来自「C++语言程序设计题典」· C++ 代码 · 共 77 行

CPP
77
字号
#include <iostream.h>
#include <stdlib.h>
#define Max 20
class Stack
{
protected:
	int top;
	int st[Max];
public:
	Stack() { top=0; }
	void push(int val)
	{
		top++;
		st[top]=val;
	}
	int pop()
	{
		int ret;
		ret=st[top];
		top--;
		return ret;
	}
};
class Enstack : public Stack
{
public:
	void push(int val)
	{
		if (top>Max)
		{
			cout << "栈上溢出" << endl;
			exit(1);
		}
		else Stack::push(val);
	}
	int pop()
	{
		if (top<1)
		{
			cout << "栈下溢出" << endl;
			exit(1);
		}
		else
			return Stack::pop();
	}
};
class Getscore : public Enstack
{
public:
	void getdata()
	{
		int score;
		cout << "  输入成绩:";
		cin >> score;
		while (score<0 || score>100)
		{
			cout << "    输入错误" << endl;
    		cout << "  输入成绩:";
 	    	cin >> score;
		}
		Enstack::push(score);
	}
};
void main()
{
	Getscore A;
	int i,n;
	cout << "学生人数:";
	cin >> n;
    for (i=0;i<n;i++)
		A.getdata();
	cout << "相反顺序:";
    for (i=0;i<n;i++)
		cout << A.pop() << " ";
	cout << "\n\n";
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?