编程考试机器评卷系统—计算机毕业设计(论文)

编程考试机器评卷系统—计算机毕业设计(论文)

ID:5686168

大小:657.50 KB

页数:43页

时间:2017-12-22

编程考试机器评卷系统—计算机毕业设计(论文)_第1页
编程考试机器评卷系统—计算机毕业设计(论文)_第2页
编程考试机器评卷系统—计算机毕业设计(论文)_第3页
编程考试机器评卷系统—计算机毕业设计(论文)_第4页
编程考试机器评卷系统—计算机毕业设计(论文)_第5页
资源描述:

《编程考试机器评卷系统—计算机毕业设计(论文)》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、编程考试机器评卷系统1前言1.1课题背景及意义目前全国计算机应用能力等级考试及各省的高校计算机教学水平考试都有上机操作考试,编程考试是其主要内容之一。在编程考试中,一方面,由于考生人数多,必须采用机器评卷;另一方面,由于考生之间水平差距较大,针对同一问题编写的程序千姿百态。编译、连接、运行都可能出错,尤其是运行过程可能会产生死循环,因此,目前还没有采用完整的源程序作为机器评卷的依据。现在已投入使用的采用机器评卷的考试题型有填写问题的结果和填写少量语句两种。前一种题型的缺点一是容易舞弊,二是有些问题不编程也可得到结果;后一种题型的缺点是,难以看出考生独立解决问题的

2、能力。因此有必要提出一种基于完整源程序分析且能采用机器阅卷的考试题型及评卷算法,吸取以前机器评卷系统的优点,运用其部分设计思路,结合了自己的思想设计完善编程考试机器评卷系统。加强自身对计算机系统知识运用能力的锻炼。此编程考试机器评卷系统通过对考生编制的每个源程序的分析过程给出评分。1.2课题相关技术的研究现状1.2.1编译原理简介在计算机科学的课程中,编译原理占有非常重要的位置,它是每个优秀的计算机专业人员必修的一门课程。它主要介绍编译程序的基本构造、一般设计方法和常用实现技术,讲解编译程序自动构造的原理和工具。具体内容包括:形式语言、有穷自动机原理及词法分析程

3、序的自动构造、自上而下和自下而上的语法分析、语法制导翻译及中间代码生成,目标程序运行时的存储组织策略及代码生成等等。并结合教授内容,安排学生在剖析一个简单的编译程序的基础上,完成编译程序的有关实验。经过本课程的学习,要求学生不但掌握一般高级语言编译程序的初步设计和实现的基本技能,并能为不同模式和不同领域的语言的实现方案寻找解决途径,另外还能运用编译程序构造的原理和技术完成相关软件工具的设计和开发工作。词法分析阶段的任务是对构成源程序的字符串从左到右进行扫描和分解,根据语言的词法规则,识别出一个一个具有独立意义的单词(也称单词符号,简称符号)。语法分析的任务是在词

4、法分析的基础上,根据语言的语法规则从单词符号串中识别出各种语法单位(如表达式、说明、语句等),并进行语法检查,即检查各种语法单位在语法构上的正确性。语义分析与中间代码的生成。语义分析的任务是首先对每种语法单位进行静态的语义审查,然后分析其含义,并用另一种语言形式(比源语言更接近于目标语言的一种中间代码或直接用目标语言)来描述这种语义。代码优化的任务是对前阶段产生的中间代码进行等价变换或改造,以期获得更为高效即省时间和空间的目标代码。编译程序在工作过程中需要建立一些表格,以登记源程序中所提供的或在编译过程中所产生的一些信息,编译各个阶段的工作都涉及到构造、查找、修

5、改或存取有关表格中的信息,因此,在编译程序中必须有一组管理各种表格的程序。图1.1编译程序的总体结构图1.2.2C语言基本语法总结(1)标识符  由字母、数字和下划线组成。标识符必须以字母或下划线开头。大、小写的字母分别认为是两个不同的字符。不同的系统对标识符的字符数有不同的规定,一般允许7个字符。(2)注释  "/*"和"*/"必须成对出现;注释不能嵌套;注释可出现在程序的任何位置。(3)常量  整型常量十进制常数(八进制常数、十六进制常数、长整型常数);字符常量(用单引号括起来的字符);字符串常量(用双引号括起来的字符序列);浮点型常量(小数形式、指数形式)

6、。(4)表达式  算术表达式(整型表达式、实型表达式);逻辑表达式(用逻辑运算符连接的整型量,结果为一个整数0或1,逻辑表达式可以认为是整型表达式的一种特殊形式);字位表达式;强制类型转换表达式(用"类型"运算符使表达式的类型进行强制转换);逗号表达式;赋值表达式(将赋值号"="右侧表达式的值赋给赋值号左边的变量);条件表达式;指针表达式(对指针类型的数据进行运算)。(5)数据定义对程序中用到的所有变量都需要进行定义。对数据定义其类型,需要时要指定其存储类别。类型标识符可用:int、short、long、unsigned、char、float、double、st

7、ruct结构体名、union共用体名等;存储类别可用:auto、static、register、extern(如不指定存储类别,作auto处理)。注意:外部数据定义只能用extern或static,而不能用auto或register。(6)函数定义  形式为:存储类别 数据类型 函数名(形参表列);形参说明;函数体。  函数的存储类别只能用extern或static。函数体是用花括弧括起来的,可包括数据定义和语句。(7)变量的初始化  可以在定义时对变量或数组指定初始值;静态变量或外部变量如未初始化,系统自动使其初值为零(对数值型变量)或空(对字符型数据);对自

8、动变量或寄存器变量,若未

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。