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

📄 1.cpp

📁 密码学的又一古典算法:维吉利亚算法.欢迎喜欢密码学的同学和我交流,谢谢,多多指教,我刚学.
💻 CPP
字号:
#include<stdio.h>
#include<ctype.h>
#include<string.h> 

void main()
{
    char cho,choo;//two kinds of choice which is iuput from keyboard
    int rot;
    char key[256],text[256],code[256];//table of crypto and plaintext
    int i,k_len,t_len;// length of secret key and plaintext 

    rot=1;
    while(rot)
	{ 

       printf("Encryption or Decryption?(E/D):");
       cho=getchar();
       getchar(); 

       printf("\nInput key:");
       gets(key);
       puts(key); 

       printf("\nInput text:");
       gets(text);
       puts(text); 

       k_len=strlen(key);
       t_len=strlen(text); 


	   
       if(cho=='E')
      
	   {
         
    
         for(i=0;i<t_len;i++)
         code[i]=((text[i]-65)+(key[i%k_len]-65))%26+65;

	   
         printf("\n");
         printf("The CRYPTION is:\n%");
         for(i=0;i<t_len;i++)
		 {
           printf("%c",code[i]);
		 }
	   }
	   if(cho=='D')
	   {
		   
		  for(i=0;i<t_len;i++)
          code[i]=((text[i]-65)-(key[i%k_len]-65))%26+65;
          printf("The PLAINTEXT is:\n%");
          for(i=0;i<t_len;i++)
		  {
           printf("%c",code[i]);
		  }
	   }
       printf("\nQuit or Continue?(Q/C)请用大写输入!:");
       scanf("%c",&choo);
       getchar();
       if(choo=='Q')
       rot=0;
 
	
	}//while
 

   
}//main

⌨️ 快捷键说明

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