⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 xxsysqk.cpp

📁 这是一套学校设备管理系统的源码 里面有树形结构使用的很棒的方法
💻 CPP
字号:
// xxsysqk.cpp : implementation file
//

#include "stdafx.h"
#include "xxgl.h"
#include "xxsysqk.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// xxsysqk dialog

extern char code[500];
extern char code1[500];
extern char code2[500];
extern char code3[500];
extern char code4[500];
extern char code5[500];
extern char code6[500];
extern int tab[2000];
extern char process_flag[2000];
static char xiaoming[50];

int find_a_seat(int max);
int rand1();

extern int rand_base;

xxsysqk::xxsysqk(CWnd* pParent /*=NULL*/)
	: CDialog(xxsysqk::IDD, pParent)
{
	//{{AFX_DATA_INIT(xxsysqk)
	m_jsj = 0;
	m_lj = 0;
	m_qt = 0;
	m_xxmc = _T("");
	m_yy = 0;
	m_zr = 0;
	m_zs = 0;
	//}}AFX_DATA_INIT
  FILE *fpe;

  unsigned char buf[40];
  unsigned char pass[40];
  int l,i,c,j,k,flag;
  unsigned char mask;

  rand_base = 1000;
  fpe = fopen("c:\\xxsbgl\\mima.txt","rb");
  fscanf(fpe,"%s\n%s\n",buf,pass);
  fclose(fpe);
  l = strlen((char *)buf);
  for (i=0;i<l*8;i++){
    c = buf[i/8];
    mask = 1;
    for (j=0;j<i%8;j++)
      mask *= 2;
    code[i] = c & mask;
    if (code[i] != 0)
      code[i] = 1;
  }

  for (i=0;i<1000;i++)
    process_flag[i] = 0;
  flag = 0;
  j = 0;
  while (flag == 0){
    i = find_a_seat(l*8);
    tab[j] = i;
    process_flag[i] = 1;
    j ++;
    if (j == l*8)
      flag = 1;
  }

  for (i=0;i<l*8;i++){
    code6[i] = code[tab[i]];
  }

  for (i=0;i<l*8;i++)
    code[i] = code6[i];

  for (i=0;i<l*8;i++){
    j = i + l%7;
    if (j >= l*8)
      j -= l*8;
    code1[i] = code[j];
  }


  for (i=0;i<l*4;i++){
    code2[i] = code1[2*i+1];
  }


  for (i=0;i<l*8;i++){
    j = i + l%7;
    if (j > l*8)
      j -= l*8;
    code3[i] = code[j];
  }


  for (i=0;i<l*4;i++){
    code4[i] = code3[2*i];
  }


  for (i=0;i<l*4;i++)
    code5[i] = code2[i] ^ code4[i];
/*
  k = 0;
  for (i=0;i<l;i++){
    c = code5[i*4]*8 + code5[i*4+1]*4 + + code5[i*4+2]*2 + + code5[i*4+3];
    if (c < 10)
      c += '0';
    else
      c += 'A' - 10;
    pass[k++] = c;
  }
  pass[k] = 0;
*/
  for (i=0;i<l;i++){
    c = pass[i];
    if (c >= 'A')
      c = c - 'A' + 10;
    else
      c -= '0';
    code5[4*i] = c / 8;
    c = c % 8;
    code5[4*i+1] = c / 4;
    c = c % 4;
    code5[4*i+2] = c / 2;
    code5[4*i+3] = c % 2;
  }

  for (i=0;i<l*4;i++)
    code2[i] = code5[i] ^ code4[i];

  for (i=0;i<l*4;i++){
    code1[2*i+1] = code2[i];
  }

  for (i=0;i<l*8;i++){
    j = i - l%7;
    if (j < 0)
      j = j + l*8;
    code[i] = code1[j];
  }

  for (i=0;i<l*8;i++){
    code6[tab[i]] = code[i];
  }

  for (i=0;i<l*8;i++)
    code[i] = code6[i];

  for (i=0;i<l;i++){
    buf[i] = code[i*8] + code[i*8+1]*2 + code[i*8+2]*4 + code[i*8+3]*8
      + code[i*8+4]*16 + code[i*8+5]*32 + code[i*8+6]*64 + code[i*8+7]*128;
  }

  strcpy(xiaoming,(char *)buf);
  m_xxmc = xiaoming;

  char buf1[10],buf2[10],buf3[10],buf4[10],buf5[10],buf6[10];
  
  fpe = fopen("c:\\xxsbgl\\xxsysqk.txt","rb");
  if (fpe != NULL){
    fscanf(fpe,"%s\n%s\n%s\n%s\n%s\n%s\n",buf1,buf2,buf3,buf4,buf5,buf6);
    m_wl = atoi(buf1);
    m_hx = atoi(buf2);
    m_sw = atoi(buf3);
    m_lj = atoi(buf4);
    m_qt = atoi(buf5);
    m_jsj = atoi(buf6);
    m_dh = atoi(buf7);
    m_yy = atoi(buf8);
    m_zs = atoi(buf9);
	fclose(fpe);
  }
}


void xxsysqk::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(xxsysqk)
	DDX_Text(pDX, IDC_jsj, m_jsj);
	DDX_Text(pDX, IDC_lj, m_lj);
	DDX_Text(pDX, IDC_qt, m_qt);
	DDX_Text(pDX, IDC_xxmc, m_xxmc);
	DDX_Text(pDX, IDC_yy, m_yy);
	DDX_Text(pDX, IDC_zr, m_zr);
	DDX_Text(pDX, IDC_zs, m_zs);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(xxsysqk, CDialog)
	//{{AFX_MSG_MAP(xxsysqk)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// xxsysqk message handlers

void xxsysqk::OnOK() 
{
	// TODO: Add extra validation here
	  FILE *fpe;
  char buf1[10],buf2[10],buf3[10],buf4[10],buf5[10],buf6[10];
  char buf7[10],buf8[10],buf9[10];

  fpe = fopen("c:\\xxsbgl\\sysqk.txt","wb");
  GetDlgItemText(IDC_wl,buf1,10);
  GetDlgItemText(IDC_hx,buf2,10);
  GetDlgItemText(IDC_sw,buf3,10);
  GetDlgItemText(IDC_lj,buf4,10);
  GetDlgItemText(IDC_qt,buf5,10);
  GetDlgItemText(IDC_jsj,buf6,10);
  GetDlgItemText(IDC_dh,buf7,10);
  GetDlgItemText(IDC_yy,buf8,10);
  GetDlgItemText(IDC_zs,buf9,10);
  fprintf(fpe,"%s\n%s\n%s\n%s\n%s\n%s\n%s\n%s\n%s\n",
	  buf1,buf2,buf3,buf4,buf5,buf6,buf7,buf8,buf9);
  fclose(fpe);

	CDialog::OnOK();
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -