Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

hatespace/CS-Homework

Repository files navigation

CS-Homework

这是本人在本科阶段所做的作业。目的是:1.为了保留纪念,等以后再看自己的作业会不会害羞和骂自己当年多菜:-);2.供师弟参考,因为做这几个作业还是挺费时的.

这些作业有参考网络上的一些代码,拿来进行一些修改用了。感谢他们的分享,原谅不能一一列出(因为时间太久,我也不记得了)

编译原理

  • 实验一:C++源代码单词扫描程序(词法分析)
    一、实验内容及要求:
    (1). C++源代码扫描程序识别C++记号。C++语言包含了几种类型的记号:标识符,关键字,数(包括整数、浮点数),字符串、注释、特殊符号(分界符)和运算符号等。
    (2). 打开一个C++源文件,打印出所有以上的记号。
    (3). 要求应用程序应为Windows界面。
    (4). 选作部分:为了提高C++源程序的可读性,C++程序在书写过程中加入了空行、空格、缩进、注释等。假设你想牺牲可读性,以节省磁盘空间,那么你可以存贮一个删除了所有不必要空格和注释的C++源程序的压缩文本。因此,程序中还应该有这样的压缩功能。
    (5). 选作部分:进一步思考或实现——如何进一步实现减小源文件大小的压缩功能。
    (6). 应该书写完善的软件文档。
  • 实验一运行截图如下(单词分割):
  • 实验二:XLEX生成器
    一、实验内容:
    设计一个应用软件,以实现将正则表达式-->NFA--->DFA-->DFA最小化-->词法分析程序
    二、实验要求:
    (1). 要提供一个源程序编辑界面,让用户输入正则表达式(可保存、打开源程序)
    (2). 需要提供窗口以便用户可以查看转换得到的NFA(用状态转换表呈现即可)
    (3). 需要提供窗口以便用户可以查看转换得到的DFA(用状态转换表呈现即可)
    (4). 需要提供窗口以便用户可以查看转换得到的最小化DFA(用状态转换表呈现即可)
    (5). 需要提供窗口以便用户可以查看转换得到的词法分析程序(该分析程序需要用C语言描述)
    (6). 应该书写完善的软件文档
  • 实验二运行截图如下(词法分析):
  • 实验三:TINY扩充语言的语法分析
    一、实验内容:
    扩充的语法规则有:实现 while、do while、for语句、大于>比较运算符号以及求余计算式子,具体文法规则自行构造。 可参考:P97及P136的文法规则。
    (1). While-stmt --> while exp do stmt-sequence endwhile
    (2). Dowhile-stmt-->do stmt-sequence while(exp);
    (3). for-stmt-->for identifier:=simple-exp to simple-exp do stmt-sequence enddo 步长递增1
    (4). for-stmt-->for identifier:=simple-exp downto simple-exp do stmt-sequence enddo 步长递减1
    (5). 大于>比较运算符号以及求余计算式子的文法规则请自行组织。
    (6). 把TINY语言原有的if语句书写格式
    if_stmt-->if exp then stmt-sequence end | if exp then stmt-sequence else stmt-sequence end
    改写为:if_stmt-->if(exp) stmt-sequence | if(exp) stmt-sequence else stmt-sequence
  • 实验三运行截图如下(语法分析):

五子棋人机对战

  • This small project is a Gomoku game with graphical human-machine interaction written in Java language. 这是一个使用Java语言编写的五子棋-人机对战桌面应用。(一个作业)
  • 运行截图如下:

Web投票系统

  • 这是使用Java+servlet+jsp+Jquery编写的一个web网站
  • 运行截图如下:

仿Windows资源管理器

  • 这是使用MFC编写的仿Windows资源管理器,此外还有进程管理,文件监控,文件多线程搜索的功能
  • 运行截图如下:

About

这是本人在本科阶段所做的作业,一是为了保留纪念,等以后再看自己的作业会不会害羞和自己当年多菜;二是给以后的师弟一些参考

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

Contributors

Languages

  • C++ 35.8%
  • Java 33.4%
  • CSS 20.5%
  • C 6.8%
  • JavaScript 3.5%

AltStyle によって変換されたページ (->オリジナル) /