数据对拍代码 c++

码了一晚上才码出这个,有点简陋,待更新

注意:1、数据路径自己在代码中修改,直接重定向即可

2、要配置好环境,将cb安装路径里的MinGW\bin路径放到path中

#include <iostream>
#include <cstdio>
#include <cstring>
#include <cmath>
#include <algorithm>
#include <vector>
#include <queue>
#include <string>
#include <stack>
#include <map>
#include <set>
#include <bitset>
#include <windows.h>
#define X first
#define Y second
#define clr(u,v); memset(u,v,sizeof(u));
#define in() freopen("data","r",stdin);
#define out() freopen("ans","w",stdout);
#define Clear(Q); while (!Q.empty()) Q.pop();
#define pb push_back
using namespace std;
typedef long long ll;
typedef pair<int, int> pii;
const int maxn = 1e5 + 10;
const int INF = 0x3f3f3f3f;
void getbat(char* TO)
{
    FILE *fp = fopen("open.bat", "w");
    fprintf(fp, "cd %s\n", TO);
    fprintf(fp, "c++  main.cpp\n");
    fprintf(fp, "a.exe\n");
    fclose(fp);
}

void Run(char* TO)//运行代码
{
    getbat(TO);
    ShellExecute(NULL, "open", "open.bat", NULL, NULL, SW_SHOWNORMAL);
}

void Change(char *s)
{
    int len = strlen(s);
    for (int i = 0; i < len; i++)
        if (s[i] == ‘\\‘)
            s[i] = ‘/‘;
}
char str1[maxn], str2[maxn];
int CMP()
{
    FILE *fp1 = fopen("C:/Users/shuhan/Desktop/ans1", "r"), *fp2 = fopen("C:/Users/shuhan/Desktop/ans2", "r");
    if (fp1 == NULL || fp2 == NULL)
    {
        puts("NO this file\n");
        return -1;
    }
    while ((fgets(str1, INF, fp1) != NULL) | (fgets(str2, INF, fp2) != NULL))
    {
        if (strcmp(str1, str2) != 0)
        {
            puts("error !");
            puts("data1 is :");
            puts(strcmp(str1,"")==0?"NULL":str1);
            puts("but data2 is :");
            puts(strcmp(str2,"")==0?"NULL":str2);
            fclose(fp1);
            fclose(fp2);
            return 0;
        }
    }
    puts("ok!");
    fclose(fp1);
    fclose(fp2);
    return 1;
}

char TOread[100], TOcode1[100], TOcode2[100];
int main()
{
    printf("请输入输入代码地址:");
    scanf("%s", TOread);
    Change(TOread);
    Run(TOread);
    puts("");
    Sleep(2000);//停止2s,让文件进行读取

    printf("请输入测试代码1地址:");
    scanf("%s", TOcode1);
    Change(TOcode1);
    Run(TOcode1);
    puts("");
    Sleep(2000);//停止2s,让文件进行读取

    printf("请输入测试代码2地址:");
    scanf("%s", TOcode2);
    Change(TOcode2);
    Run(TOcode2);
    puts("");
    Sleep(2000);//停止2s,让文件进行读取

    int flag = CMP();
    if (flag == -1)
    {
        puts("Invalid address, please check your address\n");
    }
    else if (flag == 1)
    {
        puts("answer is right\n");
    }
    else
    {
        puts("answer is wrong");
    }
    return 0;
}

时间: 2024-10-12 12:48:30

数据对拍代码 c++的相关文章

easyui-datagrid通过action从数据库获取数据的关键代码

实际上是结合struts2来从数据获取json格式的数据. 关键代码: GetUserAction.java代码 package com.log.control; import java.io.IOException; import java.io.StringWriter; import java.util.ArrayList; import java.util.List; import javax.servlet.http.HttpServletRequest; import org.apa

可执行程序包括BSS段、数据段、代码段

可执行程序包括BSS段.数据段.代码段(也称文本段). 一.BSS BSS(Block Started by Symbol)通常是指用来存放程序中未初始化的全局变量和静态变量的一块内存区域.特点是:可读写的,在程序执行之前BSS段会自动清0.所以,未初始的全局变量在程序执行之前已经成0了. 注意和数据段的区别,BSS存放的是未初始化的全局变量和静态变量,数据段存放的是初始化后的全局变量和静态变量. UNIX下可使用size命令查看可执行文件的段大小信息.如size a.out. 二.数据段 在采

MySQL查询今天/昨天/本周、上周、本月、上个月份数据的sql代码

MySQL查询本周.上周.本月.上个月份数据的sql代码 作者: 字体:[增加 减小] 类型:转载 时间:2012-11-29我要评论 MySQL查询的方式很多,下面为您介绍的MySQL查询实现的是查询本周.上周.本月.上个月份的数据,如果您对MySQL查询方面感兴趣的话,不妨一看 今天sql and TO_DAYS( now() ) - TO_DAYS(subscribeTime) = 0 昨天sql and TO_DAYS( now() ) - TO_DAYS(subscribeTime)

原生ajax调用数据简单实例代码

原生ajax调用数据简单实例代码:由于jQuery的盛行,现在使用较多的是jQuery封装好了的ajax,因为解决了浏览器兼容性问题,这对程序员来说就等于去掉了一个心头大患,但并非原生ajax就销声匿迹,并且本人感觉还是对原生的ajax有所了解的好,下面就是一段ajax数据调用的实例代码,非常的简单,初学者可以参考一下.代码如下:一.兼容浏览器部分: function xmlHttpR() { var xmlhttp; if(window.XMLHttpRequest) { xmlhttp=ne

easyUI 两个grid表格数据左移右移代码

做项目中经常遇到选择已有数据,移动到选择好数据grid的场景,比如为项目添加员工,左侧grid是待选择员工,选好后移动到右侧grid,这里我用的jquery-easyui-1.4.2,整理出一份grid数据移动的代码,可以直接使用. 1.jsp代码:(创建两个easyui-datagrid,左右横向排列) <table>     <tr><td><table id="leftGrid" class="easyui-datagrid&q

[Head First Python]6. 定制数据对象:打包代码与数据

相同功能,演进实现 数据文件 sarah2.txt sarah Sweeney,2002-6-17,2:58,2.58,2:39,2-25,2-55,2:54,2.18,2:55,2:55 1- 返回dict return({'Name':data_list.pop(0), 'DOB':data_list.pop(0), 'Time':str( sorted( set([sanitize(t) for t in data_list] ) )[0:3])}) 1 def sanitize(time

程序运行中(BSS段、数据段、代码段、堆栈)

程序运行中(BSS段.数据段.代码段.堆栈) BSS段:(bss segment)通常是指用来存放程序中未初始化的全局变量的一块内存区域.BSS是英文Block Started by Symbol的简称.BSS段属于静态内存分配. 数据段 :数据段(data segment)通常是指用来存放程序中 已初始化 的 全局变量 的一块内存区域.数据段属于静态内存分配. 代码段: 代码段(code segment/text segment)通常是指用来存放 程序执行代码 的一块内存区域.这部分区域的大小

当然找问题还得去那块请求数据的smali代码处NULL了

但是到这里,我们已经可以确认一件事就是so中的解密函数逻辑有一层防护就是判断当前调用so的应用包名是否为正确的视频包名,如果不是就不走正确的解密逻辑了.所以这里我们需要修改一下so指令,让这个判断无效.修改指令其实很简单,我们看到他通过判断strstr函数返回的NULL值,也就是对应 CMP R0,#0 指令值,然后后面有一个BEQ跳转指令,这里我们可以这么改,他不是和0判断吗?其实0就是NULL值,我们把他改成和1比较,这样strstr函数返回了NULL值也就是0,和1比较不相等.那就正确的逻

大数据推荐系统算法代码全接触(企业内训,现场实录,机器学习算法+Spark实现)

[学途无忧网]大数据推荐系统算法代码全接触(企业内训,现场实录,机器学习算法+Spark实现)课程下载:https://pan.baidu.com/s/1piCNIxC2Sv0zMY0yWxY9Ug 提取码:b10v 一.课程简介: 推荐系统是利用电子商务网站向客户提供商品信息和建议,帮助用户决定应该购买什么产品,模拟销售人员帮助客户完成购买过程.个性化推荐是根据用户的兴趣特点和购买行为,向用户推荐用户感兴趣的信息和商品.随着电子商务规模的不断扩大,商品个数和种类快速增长,顾客需要花费大量的时间