我可以: 邀请好友来看>>
ZOL星空(中国) > 技术星空(中国) > C/C++星空(中国) > 高手们,如果你能把这道题轻而易举拿下,那么你真的是高手了!
帖子很冷清,卤煮很失落!求安慰
返回列表
签到
手机签到经验翻倍!
快来扫一扫!

高手们,如果你能把这道题轻而易举拿下,那么你真的是高手了!

223浏览 / 1回复

ajioy

ajioy

0
精华
3
帖子

等  级:Lv.1
经  验:106
  • Z金豆: 0

    千万礼品等你来兑哦~快点击这里兑换吧~

  • 城  市:湖北
  • 注  册:2010-04-12
  • 登  录:2013-02-12
发表于 2010-10-19 10:22:53
电梯直达 确定
楼主
1.下面的程序以传统形式的struct定义了一个存放字符的栈类型,并定义了有关栈操作的各种函数。编写一个主函数,定义并输出一个字符串,用此串来验证栈的各种操作,包括把串压入栈中后再弹出,以相反的次序将他们显示出来。
const max_len=1000;
enum boolean {false,true};
enum {EMPTY=-1,FULL= max_len -1};
struct stack{
  char s[max_len];
  int top;
};
void reset (stack *st){st->top= EMPTY;}
void push(char c, stack *st){
  st->top++;
  st->s[st->top]=c;
}
char pop(stack *st){return(st->s[st->top--]);}
char top(stack *st){ return(st->s[st->top]);}
boolean empty(const stack *st){return(boolean)(st->top== EMPTY);}
boolean full(const stack *st){return(boolean)(st->top== FULL);}

2.用类来定义上面的字符栈,并把所有的栈操作函数定义成类成员函数。

3.在上题的基础上,定义两个重载函数push(char c;int n)和pop(int n),表示连续压入或弹出n个字符。

4.在上题的基础上,把所有的成员函数定义为公有的函数,数据成员定义为私有成员,并编写主函数调用测试各种栈操作函数的程序。

limons

limons


精华

帖子

等  级:Lv.4
经  验:2907
发表于 2010-10-29 19:08:43 1楼
是否高手不是一道题就能检测出来的
高级模式
星空(中国)精选大家都在看24小时热帖7天热帖大家都在问最新回答

针对ZOL星空(中国)您有任何使用问题和建议 您可以 联系星空(中国)管理员查看帮助  或  给我提意见

快捷回复 APP下载 返回列表