怎么用CC++语言设计一个对一个程序进行自动测试的程序?

怎么用CC++语言设计一个对一个程序进行自动测试的程序?,第1张

这是要做OJ吗……以下用Linux角度考如兆虑。

1.第一步和第二步有何不同?

2.首先编译工作可以用system调用make脚本。一般限定只有一个代码文件,所以makefile是固定的,产生的可执行文件也是固定的。通过限定makefile,可以限制编译时对系统库和网络库的调用。

3.用>和<在调用可执行文件时实现咐基输入输出重定向。输出的文件名和标准输出结果都是预定的。

4.将实际输出文件和标准输出文件进行比较。采用类似Special Judge的方式,专门设计一个程序同时读入两个输出文件,逐行比较。

5.为了实现定时功能,可以用子渣简租线程方式运行程序,主线程负责检测时间。时间到了看看子线程有没有返回,就知道是否TLE。

#include<stdio.h>

void main()

{

int n

while(scanf("%d",&n)!=EOF,n)

//或者写知培含成while(scanf("%d",&n)!=EOF)然后在循环里加一句if(n==0)break

{

//笭场蒂渡郦盗垫醛叮互搭笑if(n==0)break

if((n/10000==n%10)&&(n/1000%10==n/10%10))

//判断回文

printf("Yes.\

")

else

printf("No.\

")

}

}

这个代码应该是对的,中闭在OJ上,多组数据都是这么处理的。

这个没关系的,提交的时候,这样也是对的,因为OJ系统在判断答案的时候,输入和输出数据放在不同的文件夹下面的,只要它的输入文件在你的程序下运行,对应的输出文件和他的一致,你的程序就是正确的,所以,就不需要把结果存起来。

如果你真的想那样,那就用一个数组把答案存起来,等循环结束的时候,再把结果printf就行了


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/12510788.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-26
下一篇 2023-05-26

发表评论

登录后才能评论

评论列表(0条)

保存