说明.txt

来自「循环异或」· 文本 代码 · 共 51 行

TXT
51
字号
用输入的Password与明文作循环异或得到密文,在用相同的Password与密文异或得到明文。




注意:Password只限于数字。




程序代码:

#include<stdio.h>
main()
{
 int password=0;
 FILE *sfp,*tfp;
 char sname[10],tname[10];
 int ch;
 printf("\n Input S_file name:\t");
 scanf("%s",sname);
 printf("\n Input T_file name:\t");
 scanf("%s",tname);
 printf("\n Input Password:\t");
 while((ch=getch())!=13)
 {
  if((ch<48)||(ch>57))	continue;
  password*=10;
  password+=ch-48;
 }
 sfp=fopen(sname,"rb");
 tfp=fopen(tname,"wb");
 if(sfp==NULL)
 {
  printf("Cannot open file:%s\n",sname);
  exit(1);
 }
 if(tfp==NULL)
 {
  printf("Cannot open file:%s\n",tname);
  exit(1);
 }
 while((ch=fgetc(sfp))!=EOF)
 {
  ch=ch^password;
  if(ch==EOF)	printf("EOF error!");
  if(fputc(ch,tfp)==EOF)	printf("EOF error!");
 }
 fclose(sfp);
 fclose(tfp);
}

⌨️ 快捷键说明

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