- 1、本文档共6页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
武汉理工大学理学院数学系课程实
武汉理工大学理学院数学系课程实验报告
课 程 名 称: 数据结构
班级 ??信计0803 日 期 2010.11.15 ?成绩评定 ? 姓名 赵威 实验室 理学院-----108 ?老师签名 ? 实验名称 ?用栈和队列实现魔王语言 所用软件 ?VC++
? 实验目的
及
内
容 ?主要功能:
魔王总是使用自己的一种非常精练而抽象的语言讲话,没人能听懂,但他的语言是可逐步解释成人能听懂的语言,因为他的语言是由以下两种形式的规则由人的语言逐步抽象上去的:
-----------------------------------------------------------
1)a--- (B1)(B2)....(Bm)
2)[(op1)(p2)...(pn)]----[o(pn)][o(p(n-1))].....[o(p1)o]
-----------------------------------------------------------
在这两种形式中,从左到右均表示解释.试写一个魔王语言的解释系统,把他的话解释成人能听得懂的话.
基本要求:
用下述两条具体规则和上述规则形式(2)实现.设大写字母表示魔王语言的词汇;小写字母表示人的语言的词汇;希腊字母表示可以用大写字母或小写字母代换的变量.魔王语言可含人的词汇.
1) B -- tAdA
2) A -- sae
实
验
?原
理
步
骤
、 程序清单如下:
魔王.cpp
/*-----------------------定义头文件---------------------------*/
#includeiostream.h
#includestdio.h
#includestring.h
/*-----------------------定义全局变量-------------------------*/
int top=0;
int find=0;
//top=0;
char transl[200];
char leag[200];
char link[100];
int rear=1;
//rear=1;
/*-------------------MAIN()主函数---------------------------*/
int main()
{
char pop(); //定义出栈函数
char ml[2][200]; //定义两个规则,把它们存放到ml中
coutendl;
cout ** ===魔王语言程序设计=== ** endl;
cout ******************************************************* endl;
cout ******************************************************* endl;
cout ** 本程序可以翻译魔王语言且按以下两条形式规则由人 ** endl;
cout ** ** endl;
cout **的语言逐步抽象上去: ** endl;
cout ** ** endl;
cout **①α-β1β2β3β4... ** endl;
cout ** ** endl;
cout **②(θβ1β2β3)-θβ3θβ2θβ1θ ** endl;
cout **
文档评论(0)