一:需求分析 1. 问题描述 魔王总是使用自己的一种非常精练而抽象的语言讲话,没人能听懂,但他的语言是可逐步解释成人能听懂的语言,因为他的语言是由以下两种形式的规则由人的语言逐步抽象上去的: ----------------------------------------------------------- (1) a---> (B1)(B2)....(Bm) (2)[(op1)(p2)...(pn)]---->[o(pn)][o(p(n-1))].....[o(p1)o] ----------------------------------------------------------- 在这两种形式中,从左到右均表示解释.试写一个魔王语言的解释系统,把 他的话解释成人能听得懂的话. 2. 基本要求: 用下述两条具体规则和上述规则形式(2)实现.设大写字母表示魔王语言的词汇 小写字母表示人的语言的词汇 希腊字母表示可以用大写字母或小写字母代换的变量.魔王语言可含人的词汇. (1) B --> tAdA (2) A --> sae 3. 测试数据: B(ehnxgz)B 解释成 tsaedsaeezegexenehetsaedsae若将小写字母与汉字建立下表所示的对应关系,则魔王说的话是:"天上一只鹅地上一只鹅鹅追鹅赶鹅下鹅蛋鹅恨鹅天上一只鹅地上一只鹅". | t | d | s | a | e | z | g | x | n | h | | 天 | 地 | 上 | 一只| 鹅 | 追 | 赶 | 下 | 蛋 | 恨 |
上传时间: 2014-12-02
上传用户:jkhjkh1982
[输入] 图的顶点个数N,图中顶点之间的关系及起点A和终点B [输出] 若A到B无路径,则输出“There is no path” 否则输出A到B路径上个顶点 [存储结构] 图采用邻接矩阵的方式存储。 [算法的基本思想] 采用广度优先搜索的方法,从顶点A开始,依次访问与A邻接的顶点VA1,VA2,...,VAK, 访问遍之后,若没有访问B,则继续访问与VA1邻接的顶点VA11,VA12,...,VA1M,再访问与VA2邻接顶点...,如此下去,直至找到B,最先到达B点的路径,一定是边数最少的路径。实现时采用队列记录被访问过的顶点。每次访问与队头顶点相邻接的顶点,然后将队头顶点从队列中删去。若队空,则说明到不存在通路。在访问顶点过程中,每次把当前顶点的序号作为与其邻接的未访问的顶点的前驱顶点记录下来,以便输出时回溯。 #include<stdio.h> int number //队列类型 typedef struct{ int q[20]
标签: 输入
上传时间: 2015-11-16
上传用户:ma1301115706
JK Proxy Project - Version 0.1 ------------------------------ This was going to be a proxy server bu I stopped developing this program (maybe I will go on coding on this application again some time). The email part with spam filtering already works. Check out the numerous text files for additional information.
标签: Project Version Proxy going
上传时间: 2014-08-10
上传用户:coeus
This the second tutorial of the Writing Device Drivers series. There seems to be a lot of interest in the topic, so this article will pick up where the first left off. The main focus of these articles will be to build up little by little the knowledge needed to write device drivers. In this article, we will be building on the same example source code used in part one. In this article, we will expand on that code to include Read functionality, Handle Input/Ouput Controls also known as IOCTLs, and learn a bit more about IRPs.
标签: the interest tutorial Drivers
上传时间: 2016-01-28
上传用户:lmeeworm
The XML Toolbox converts MATLAB data types (such as double, char, struct, complex, sparse, logical) of any level of nesting to XML format and vice versa. For example, >> project.name = MyProject >> project.id = 1234 >> project.param.a = 3.1415 >> project.param.b = 42 becomes with str=xml_format(project, off ) "<project> <name>MyProject</name> <id>1234</id> <param> <a>3.1415</a> <b>42</b> </param> </project>" On the other hand, if an XML string XStr is given, this can be converted easily to a MATLAB data type or structure V with the command V=xml_parse(XStr).
标签: converts Toolbox complex logical
上传时间: 2016-02-12
上传用户:a673761058
学生选课系统,该系统主要实现简单的大学学生选修课程的功能。 1.系统的用户主要分为2类:学生和管理员 2.数据描述 <1> 课程: 课程号、课程名、学分、学时、教师、开课学期、适用专业、最大选课人数 <2> 学生:学号、姓名、密码、专业年级 <3> 学生选课情况:学号、课程号、是否已经考试、成绩 <4> 管理员:编号、姓名、密码 3.功能描述 <1> 学生功能: a. 登录:学生使用学号和密码登录。 b. 选课功能:学生能够选择所需要的课程。 c. 退选功能:学生能够退选课程。 d. 选课情况查询:查询该学生已经选的课程(分学期)。 e. 成绩查询:查询该学生某一门课程的成绩,某学期所有课程的成绩。 <2> 管理员功能 a. 登录: b. 管理课程:包括课程的增加、删除、修改等。 c. 选课管理:能够列出指定学期、课程的选课学生名单,能够对学生的选课进行调整。 d. 成绩表管理:能够录入学生的成绩,列出指定学期、课程的成绩单。
标签:
上传时间: 2014-12-04
上传用户:Yukiseop
该系统主要实现简单的大学学生选修课程的功能。 1.系统的用户主要分为2类:学生和管理员 2.数据描述 <1> 课程: 课程号、课程名、学分、学时、教师、开课学期、适用专业、最大选课人数 <2> 学生:学号、姓名、密码、专业年级 <3> 学生选课情况:学号、课程号、是否已经考试、成绩 <4> 管理员:编号、姓名、密码 3.功能描述 <1> 学生功能: a. 登录:学生使用学号和密码登录。 b. 选课功能:学生能够选择所需要的课程。 c. 退选功能:学生能够退选课程。 d. 选课情况查询:查询该学生已经选的课程(分学期)。 e. 成绩查询:查询该学生某一门课程的成绩,某学期所有课程的成绩。 <2> 管理员功能 a. 登录: b. 管理课程:包括课程的增加、删除、修改等。 c. 选课管理:能够列出指定学期、课程的选课学生名单,能够对学生的选课进行调整。 d. 成绩表管理:能够录入学生的成绩,列出指定学期、课程的成绩单。
上传时间: 2016-03-06
上传用户:jyycc
1.设计目的 (1)设计交通灯控制器; (2)学习状态机的设计方法; (3)学习原理图、状态机等多种的设计方法进行混合设计; (4)熟练掌握器件设计输入、编译、仿真和编程的过程。 2.设计内容 位于十字路口的交通灯,在A方向和B方向各有红、黄、绿三盏灯,按所列顺序进行循环,交通灯循环顺序见表1所示。其中1表示灯亮,0表示灯灭。
上传时间: 2016-03-13
上传用户:mikesering
编写简单的加密程序它把一个文件的所有字母按下列规律进行 换,非字母的字符保持不变。文本可以自行创建,文件名可以自定 转换规律:‘A’→‘Z’,‘B’→‘Y’,• •
上传时间: 2016-03-23
上传用户:ouyangtongze
编程题(15_01.c) 结构 struct student { long num char name[20] int score struct student *next } 链表练习: (1).编写函数struct student * creat(int n),创建一个按学号升序排列的新链表,每个链表中的结点中 的学号、成绩由键盘输入,一共n个节点。 (2).编写函数void print(struct student *head),输出链表,格式每行一个结点,包括学号,姓名,分数。 (3).编写函数struct student * merge(struct student *a,struct student *b), 将已知的a,b两个链表 按学号升序合并,若学号相同则保留成绩高的结点。 (4).编写函数struct student * del(struct student *a,struct student *b),从a链表中删除b链表中有 相同学号的那些结点。 (5).编写main函数,调用函数creat建立2个链表a,b,用print输出俩个链表;调用函数merge升序合并2个 链表,并输出结果;调用函数del实现a-b,并输出结果。 a: 20304,xxxx,75, 20311,yyyy,89 20303,zzzz,62 20307,aaaa,87 20320,bbbb,79 b: 20302,dddd,65 20301,cccc,99 20311,yyyy,87 20323,kkkk,88 20307,aaaa,92 20322,pppp,83
上传时间: 2016-04-13
上传用户:zxc23456789