分页:
上一页 1 2 3 4 [5] 6 7 下一页
威望:20
文章:3776
积分:1548
注册:2002-11-21
第3楼
--------------------------------------------------------------------------------
首先,我讲一下考试评分系统的工作原理:
考试评分系统是不看源程序。而是对你的源程序编译时所产生的.obj文件和.exe文件进行测试。测试分为两部份组成:
一、运行:完成输入、输出。
二、评分:与预期的结果对比。
运行:
1、运行.exe文件(由你的源程序生成的),运行时,它会调用一个读函数,把in.dat文件里的测试数据读入主函数;一般二级有20组数据,三级、四是一大组数据(一篇英文、400个四位数、100个记录等)
2、调用你所编写的函数,把这些数代入。
3、调用写函数,把运行结果写入out.dat文件里。一般二级有20行结果(就是每组数据的运行结果),三级、四级有一大组结果(如一组字符流)或二到三个结果(如求平均值、公差、符合条件的数的个数等)
以上这三个过程二级里是调用NONO函数完成,三级、四级是分别调用ReadDat()和WriteDat()函数来完成。
评分:
运行test.exe文件,把out.dat文件里的内容与评分系统内的内容(预期结果)比较,在二级里,每对一行(就是这组数据的测试结果),给5分。
三级、四级的就要看具体情况给分了,如:字符流处理的,那只要错一个小部分就0分,因为字符流是连续的。如果是数值处理的(有2-3个结果),那就是每对一个结果结20-30分,但错了一个答案就很难及格了,因为数值处理很多数是互相关联的,如:求平均值,如果符合条件的数的个数错了,那平均值也一定是错的。还有那个100个记录的,那它是以那一行上的内容是不是与预期的一样,每对一行给1分。(因为这个测试数据刚好一百行),这就是三级或四级里有:0<成绩<100 分的原故。(很多人都说三级四级上机成绩不是0分就是一百分,这个观点是错的)
以上文件名、函数名应以源程序调用时的名为准。
由上述可知:一个题如果通过编译、能运行就一定有分,那是错的,因为一个题,如果你一点都不做(放空),那是一定能通过编译和运行的。但这时,out.dat文件为空,如果你编写了程序,而运行的结果都是错的,那和空是一样的。这样是不能得分的。
分页:
上一页 1 2 3 4 [5] 6 7 下一页