高手云集的CSDN也没有人给我点思路么,我只知道可能要用到编译原理的知识,其他的还没想到如果题目是写一段程序计算N的阶乘通过怎样的处理能够给出分数,并且这个分数跟老师判的分数十分接近呢

解决方案 »

  1.   

    很难.特别是别人的代码出错的时候.说实话,老师判的分也只能说是一个大概印象分.
    ========
    也许可以比较关键字,关键语句.也许prolog更适合做这个.
      

  2.   

    acm的在线答题看过没有?
    自动编译执行捕获输出的
      

  3.   

    现在有了一个解释执行的c++的东西
    叫UnderC
      

  4.   

    一般这种考试系统对主观题的要求非常严格,例如输入数据的格式,输出数据的格式等等。我原来见过一个C语言编程比赛的自动判断系统,它是把.c文件(可以从Browser取得文本,程序生成),写一个外壳程序,用make等编译连接,argc,argv输入原数据,执行编译完的exe,将结果输出到文件中(利用管道取屏幕输出到文件),然后判断结果文件中数据的对错,比如说,有10组输入数据,测试的程序对了5组,就算是对了一半。效果一般。