合肥生活安徽新聞合肥交通合肥房產生活服務合肥教育合肥招聘合肥旅游文化藝術合肥美食合肥地圖合肥社保合肥醫院企業服務合肥法律

        COMP3173代做、代寫C/C++程序設計

        時間:2023-11-04  來源:合肥網hfw.cc  作者:hfw.cc 我要糾錯


        COMP31**代做、代寫C/C++程序設計
        Project Implementation
        Phase 1 Lexical analysis
        In phase 1, you need to implement a lexer for the language described in “COMP31** 23F Project Description.docx”. Your lexer consists of five source files: “func.c”, “lexer.h”, “lexer.c”,  “symbol_table.h”, and “symbol_table.c”. Detailed requirements are listed below.
        “func.c” 
        -It is the main entry of the entire project (all phases). 
        -It opens the source program.
        -The source program is passed to the main function as an argument.
        -It makes calls to the function “next_token” defined in “lexer.h” and “lexer.c”.
        -It maintains a symbol table defined in “symbol_table.h” and “symbol_table.c” to store all the identifiers.
        -If the function “next_token” returns a token, print the token and its attribute(s) on the screen for verification purpose.
        -If “next_token” returns an error flag, report the error and its location.
        -After the entire process is finished, print out the symbol table.
        “lexer.h” and “lexer.c” 
        -You need to design and implement a DFA to complete this task.
        -To implement the DFA, you must use a transition table.
        -You must define the transition table in “lexer.h” in a proper way (for example, as a 2-dimensional constant array).
        -It reads and cuts the source program into lexemes.
        -It returns the first token which is found every time when “next_token” is called.
        -It ignores spaces, indentations, line breaks, and comments.
        -If the token is an identifier, insert the token into the symbol table. Each token has an attribute to record its memory location in the symbol table.
        -If the token is an integer literal, the token has two attributes: type, for its data type; and value, for its value.
        -If the token is none of the above, it does not have an attribute.
        -If there is any lexical error, returns an error flag to the main function.
        “symbol_table.h” and “symbol_table.c”
        -It should be implemented as a data structure (AVL tree is recommended to search and insert symbols efficiently or you can use any data structure you want. Efficiency is not required here.);
        -Each identifier has its variable name and its type. (This language has two three types of identifiers, integers natural numbers, Boolean, and functions.)
        -Currently, the type of identifiers cannot be decided (it is done by semantic analysis). So, the corresponding type in the symbol table is just NULL.
        -The symbol table also needs a function to print out its content.

        The implementation must be done in standard C (not in Visual C). For those who do not have standard C installed on your local computer, you can try to install MinGW from https://www.mingw-w64.org/ or use online GDB at https://www.onlinegdb.com/ . TA will use make file to check your analyzer.

        Example: 
        In the package “Example.zip”, you will find all the source files described above. Currently, they are all empty. The main function simply prints the argument on the screen. The package also contains “make.bat”. You can open it by a txt reader. Then, you can see the compilation commands. 

        After executing “make.bat” (suppose you are using Windows and have GCC installed), you will have “func.exe”, which is the compiled analyzer.

        Suppose the source program that we want to analyze is “sample.txt”, we execute “func sample.txt”.

        Submission requirements
        Each team need to clearly indicate the contribution of each team member in a txt file. To submit your work, you need to pack all files (source code and contribution txt) in a package. Rename the package as COMP31**_23F_TeamXX, where XX is your team number. Only team leaders need to upload the package to iSpace.
        請加QQ:99515681 或郵箱:99515681@qq.com   WX:codehelp
         

        掃一掃在手機打開當前頁
      1. 上一篇:代做COP5615、代寫Java,Python編程
      2. 下一篇:代做comp3511、代寫Python/Java編程
      3. 無相關信息
        合肥生活資訊

        合肥圖文信息
        急尋熱仿真分析?代做熱仿真服務+熱設計優化
        急尋熱仿真分析?代做熱仿真服務+熱設計優化
        出評 開團工具
        出評 開團工具
        挖掘機濾芯提升發動機性能
        挖掘機濾芯提升發動機性能
        海信羅馬假日洗衣機亮相AWE  復古美學與現代科技完美結合
        海信羅馬假日洗衣機亮相AWE 復古美學與現代
        合肥機場巴士4號線
        合肥機場巴士4號線
        合肥機場巴士3號線
        合肥機場巴士3號線
        合肥機場巴士2號線
        合肥機場巴士2號線
        合肥機場巴士1號線
        合肥機場巴士1號線
      4. 短信驗證碼 酒店vi設計 NBA直播 幣安下載

        關于我們 | 打賞支持 | 廣告服務 | 聯系我們 | 網站地圖 | 免責聲明 | 幫助中心 | 友情鏈接 |

        Copyright © 2025 hfw.cc Inc. All Rights Reserved. 合肥網 版權所有
        ICP備06013414號-3 公安備 42010502001045

        精品香蕉久久久午夜福利| 午夜天堂精品久久久久| 国产一区二区精品久久91| 久久亚洲AV无码精品色午夜麻豆| 久久久精品久久久久久| 日韩精品专区在线影院重磅| 国产在线精品二区赵丽颖| 国产精品va一级二级三级| 99久久国产综合精品1尤物| 最新国产成人精品2024| www国产亚洲精品久久久日本 | 日韩精品一区二区三区中文版| 国内揄拍国内精品视频| 亚洲国产精品无码久久久秋霞1| 国产成人精品免费视频大全麻豆| 97在线视频精品| 99re视频精品全部免费| 亚洲系列国产精品制服丝袜第 | 精品国产乱码久久久久软件 | 亚洲国产成人久久精品影视| 亚洲国产精品VA在线观看麻豆| 国产内地精品毛片视频| 亚洲精品国产精品乱码不卞| 日韩成人国产精品视频| 国产精品无码av片在线观看播| 天堂一区二区三区精品| 亚洲国产精品无码中文lv| 中文字幕精品三区无码亚洲| 99精品一区二区免费视频| 久久精品久久精品| 亚洲精品无码成人片久久| 国内精品久久久久久99蜜桃| 久久99久久99小草精品免视看| 亚洲人精品午夜射精日韩 | 久久国产精品99久久小说| 精品成人av一区二区三区| 日韩丰满少妇无码内射| 国产精品第20页| 亚洲精品高清国产麻豆专区| 精品久久久久久婷婷| 精品影片在线观看的网站|