楼主你好!
你应该是想通过异或进行简单的加密吧!
#
include
#
include
#
include
int
main(void)
{
char
key;
char
str[10];
int
i;
printf("请输入密钥:");
scanf("%c",&key);
fflush(stdin);
printf("请输入要加密的文字:\n");
scanf("%s",str);
int
len=strlen(str);
for(i=0;i
str[i]=str[i]^key;
}
printf("密文:\n");
printf("%s\n",str);
printf("解密:\n");
for(i=0;i
str[i]=str[i]^key;
}
printf("%s\n",str);
system("pause");
}
以上代码已经改正!可以运行!
总的说!你的代码有两个问题!
第一,下面这段是不是多余了啊?
for(i=0;i
str[i]=str[i]^key;
}
第二,就是for()里面就不应该用strlen(str),假如你密钥是a,加密的密文是abc,是不是导致第一轮循环就使得str[0]=0;再判断i
希望我的回答对你有帮助!