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

📄 danbiao.cpp

📁 一个单表加解密程序
💻 CPP
字号:

// danbiao.cpp : Defines the entry point for the console application.
//

#include <fstream.h>
#include <iostream.h>
#include "stdafx.h"
#include "DanBiao.h"

int main()
{
	DanBiao db;
	char inpoint[32]="1.c";
	char outpoint[32]="2.c";
	char ch;
	
	cout<<"Source file name :";
	cin>>inpoint;
	cout<<"Destination file name :";
	cin>>outpoint;
    
	if(db.setpoint(inpoint, outpoint))
	{
		while(1)
		{
			cout<<"Encode (E) or Decode (D) ?\n";
		    cin>>ch;
			switch(ch)
			{
			case 'E' :
			case 'e' :   db.encode();
                         return 1;
			case 'D' : 
			case 'd' :   db.decode();
						 return 1;   
			}
		}
	}
	return 0;
}

//////////////////////////////////////////////////////////////////////
// DanBiao Class
//////////////////////////////////////////////////////////////////////

//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////

DanBiao::DanBiao()
{
    key="QWERTYUIOPASDFGHJKLZXCVBNM";
}

DanBiao::~DanBiao()
{

}


int DanBiao::setpoint(char *inpoint, char *outpoint)
{
	fin.open(inpoint, ios::in, 0);
	if(!fin)
	{
	    cout<<"Error : file1 can't open !\n";
		return 0;
	}

	fout.open(outpoint, ios::out, 0);
	if(!fout)
	{
	    cout<<"Error : file1 can't open !\n";
		return 0;
	}

	return 1;
}

void DanBiao::decode()
{
     ctemp=fin.get();
	 while(!fin.eof())
	 {
	      switch(ctemp)
		  {
		        case 'A' :
				case 'a' :    fout.put('K');
					          break;
				case 'B' :
				case 'b' :    fout.put('X');
				              break;
				case 'C' :   
				case 'c' :    fout.put('V');
			                  break;	
				case 'D' :
				case 'd' :    fout.put('M');
				              break;
				case 'E' :
				case 'e' :    fout.put('C');
				              break;
				case 'F' :
				case 'f' :    fout.put('N');
				              break;
				case 'G' :
				case 'g' :    fout.put('O');
				              break;
				case 'H' :
				case 'h' :    fout.put('P');
				              break;
				case 'I' :
				case 'i' :    fout.put('H');
				              break;
				case 'J' :
				case 'j' :    fout.put('Q');
				              break;
				case 'K' :
				case 'k' :    fout.put('R');
				              break;
				case 'L' :
				case 'l' :    fout.put('S');
				              break;
				case 'M' :
				case 'm' :    fout.put('Z');
				              break;
				case 'N' :
				case 'n' :    fout.put('Y');
				              break;
				case 'O' :
				case 'o' :    fout.put('I');
				              break;
				case 'P' :
				case 'p' :    fout.put('J');
				              break;
				case 'Q' :
				case 'q' :    fout.put('A');
				              break;
				case 'R' :
				case 'r' :    fout.put('D');
				              break;
				case 'S' :
				case 's' :    fout.put('L');
				              break;
				case 'T' :
				case 't' :    fout.put('E');
				              break;
				case 'U' :
				case 'u' :    fout.put('G');
				              break;
				case 'V' :
				case 'v' :    fout.put('W');
				              break;
				case 'W' :
				case 'w' :    fout.put('B');
				              break;
                case 'X' :
				case 'x' :    fout.put('U');
				              break;
                case 'Y' :
				case 'y' :    fout.put('F');
				              break;
                case 'Z' :
				case 'z' :    fout.put('T');
				              break;
                default : ctemp=fin.get();
		  }
		  ctemp=fin.get();
	 }
}

void DanBiao::encode()
{
     ctemp=fin.get();
	 while(!fin.eof())
	 {
	      switch(ctemp)
		  {
		        case 'A' :
				case 'a' :    fout.put(key[0]);
					          break;
				case 'B' :
				case 'b' :    fout.put(key[1]);
				              break;
				case 'C' :   
				case 'c' :    fout.put(key[2]);
			                  break;	
				case 'D' :
				case 'd' :    fout.put(key[3]);
				              break;
				case 'E' :
				case 'e' :    fout.put(key[4]);
				              break;
				case 'F' :
				case 'f' :    fout.put(key[5]);
				              break;
				case 'G' :
				case 'g' :    fout.put(key[6]);
				              break;
				case 'H' :
				case 'h' :    fout.put(key[7]);
				              break;
				case 'I' :
				case 'i' :    fout.put(key[8]);
				              break;
				case 'J' :
				case 'j' :    fout.put(key[9]);
				              break;
				case 'K' :
				case 'k' :    fout.put(key[10]);
				              break;
				case 'L' :
				case 'l' :    fout.put(key[11]);
				              break;
				case 'M' :
				case 'm' :    fout.put(key[12]);
				              break;
				case 'N' :
				case 'n' :    fout.put(key[13]);
				              break;
				case 'O' :
				case 'o' :    fout.put(key[14]);
				              break;
				case 'P' :
				case 'p' :    fout.put(key[15]);
				              break;
				case 'Q' :
				case 'q' :    fout.put(key[16]);
				              break;
				case 'R' :
				case 'r' :    fout.put(key[17]);
				              break;
				case 'S' :
				case 's' :    fout.put(key[18]);
				              break;
				case 'T' :
				case 't' :    fout.put(key[19]);
				              break;
				case 'U' :
				case 'u' :    fout.put(key[20]);
				              break;
				case 'V' :
				case 'v' :    fout.put(key[21]);
				              break;
				case 'W' :
				case 'w' :    fout.put(key[22]);
				              break;
                case 'X' :
				case 'x' :    fout.put(key[23]);
				              break;
                case 'Y' :
				case 'y' :    fout.put(key[24]);
				              break;
                case 'Z' :
				case 'z' :    fout.put(key[25]);
				              break;
                default : ctemp=fin.get();
		  }
		  ctemp=fin.get();
	 }
}

⌨️ 快捷键说明

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