#include<bits/stdc++.h>
#include<windows.h>
using namespace std;
int cas;
int main(){
while(1){
Sleep(50);
system("data.exe");//生成数据
system("std.exe");//你的两份代码的exe文件1
system("test.exe");//你的两份代码的exe文件2
printf("-----------Test Case %d----------\n",++cas);
if(system("fc test.out test.ans")) system("pause");
}
return 0;
}
当然这里还有一份不用
\(\text{freopen}\)的对拍程序
#include <cstdio>
#include <cstdlib>
#include <windows.h>
using namespace std;
int main()
{
//For Windows
//对拍时不开文件输入输出
//当然,这段程序也可以改写成批处理的形式
int tot = 0;
while(1)
{
Sleep(50);
printf("Test Data %d :\n",++tot);
system("Create_Data.exe > data.in");//数据生成器将生成数据写入输入文件
system("luogu1.exe < data.in > data1.out");//获取程序1输出
system("C.exe < data.in > data2.out");//获取程序2输出
if(system("fc data1.out data2.out"))
{
//该行语句比对输入输出
//fc返回0时表示输出一致,否则表示有不同处
system("pause");//方便查看不同处
//该输入数据已经存放在data.in文件中,可以直接利用进行调试
}
}
}
原文:https://www.cnblogs.com/PPLPPL/p/13569291.html