crypt.c

来自「日文版畅销书籍10天学会C语言的源程序。适合入门者学习使用。希望对大家有帮助。」· C语言 代码 · 共 57 行

C
57
字号
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

//僼傽僀儖埫崋壔
main (int argc, char* argv[]) {
	char ch;
	FILE *fp;	//擖椡僼傽僀儖億僀儞僞
	FILE *wfp;	//弌椡僼傽僀儖億僀儞僞
	char filename[256];		//擖椡僼傽僀儖柤
	char outfilename[256];	//弌椡僼傽僀儖柤
	char key[128];			//埫崋僉乕
	int keylen;				//僉乕偺挿偝
	int i = 0;
	
	//尨暥僼傽僀儖柤偺寛掕
	if (argc > 1) {
		strcpy(filename, argv[1]);
	} else {
		printf("僼傽僀儖柤傪擖椡偟偰壓偝偄 > ");
		scanf("%s", filename);
	}

	//埫崋僉乕偺擖椡
	printf("埫崋僉乕傪擖椡偟偰壓偝偄 > ");
	scanf("%s", key);
	keylen = strlen(key);

	//尨暥僼傽僀儖乮擖椡僼傽僀儖乯僆乕僾儞
	fp = fopen(filename, "rb");
	if (!fp){
		printf("僼傽僀儖僆乕僾儞僄儔乕\n");
		exit(1);
	}

	//埫崋壔僼傽僀儖乮弌椡僼傽僀儖乯僆乕僾儞
	strcpy(outfilename, filename);
	strcat(outfilename, "_");
	wfp = fopen(outfilename, "wb");
	if (!wfp){
		printf("僼傽僀儖僆乕僾儞僄儔乕\n");
		exit(1);
	}
	//埫崋壔
	while (fread(&ch, sizeof(char), 1, fp) == 1) {
		ch = ch + key[i++];
		if(i >= keylen) { i = 0; }
		fwrite(&ch, sizeof(char), 1, wfp);
	}

	fclose(wfp);
	fclose(fp);
	printf("僼傽僀儖 %s 傪埫崋壔偟傑偟偨\n", filename);
	printf("嶌惉僼傽僀儖丗%s\n", outfilename);
	return 0;
}

⌨️ 快捷键说明

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