本文目录一览:
c语言 数据加密
#include stdio.h
void main()
{
int a[5]; /* 存储各位上的数字 */
int num, temp, encripy; /* num是要输入的数,temp是交换时用来存储临时值,encripy是加密后的数据 */
int i;
do
{
printf("Please input the number:");
scanf("%d",num);
if(!(num/10000 !=0 num/100000==0))
printf("Data error!\n");
}while(!(num/10000 !=0 num/100000==0));
a[0] = num/10000%10; /* 求各位上的数字 */
a[1] = num/1000%10;
a[2] = num/100%10; /* 百位上的数字 */
a[3] = num/10%10; /* 十位上的数字 */
a[4] = num%10; /* 个位上的数字 */
for(i = 0; i 5; ++i) /* 开始加密 */
a[i] = (a[i] + 8)%10;
temp = a[0]; /* 交换位置开始 */
a[0] = a[3];
a[3] = temp;
temp = a[1];
a[1] = a[2];
a[2] = temp; /* 交换位置结束同时加密结束 */
encripy = a[0]*10000 + a[1]*1000 + a[2]*100 + a[3]*10 + a[4]; /* 加密后的数据 */
printf("\nThe scourse number: %d\n", num); /* 输出原数据 */
printf("\nEncripy the number: %d\n\n", encripy); /* 输出加密后的数据 */
}
在VC6.0成功运行,希望对你有帮助!
C语言文件加密
#includestdio.h
int main()
{char ch;
FILE *fp1,*fp2;
fp1=fopen("d:\\file1.txt","r");
fp2=fopen("d:\\file2.txt","w");
printf("加密后的内容:\n");
while((ch=fgetc(fp1))!=EOF)
{ch^=0x6a; putchar(ch); fputc(ch,fp2);}
fclose(fp1);
fclose(fp2);
printf("\n解密后的内容:\n");
fp2=fopen("d:\\file2.txt","r");
while((ch=fgetc(fp2))!=EOF)
{ch^=0x6a; putchar(ch);}
return 0;
}
C语言怎么加密字符
我没注意只要小写,我写的是大小写都可以的,另外附送输入验证。
#include stdio.h
#include string.h
int main()
{
char str[]="00000",str2[]="00000",*p=str,*p2=str2;
printf("输入5个字母:");
while(*p!=0)
{
scanf("%c",p);
if(*p=='\n')
continue;
if(*p'A'||(*p'Z'*p'a') || *p'z') //输入验证,必须是字母
{
printf("只能输入字母,请重新输入\n");
p=str;
p2=str2;
fflush(stdin);//输入有错重新输入前清空缓冲区。fflush属于c扩展函数,正常使用没问题,如需在linux ggc上使用,考虑多次调用getchar函数来清空
}
else
{
*p2=(*p)+4;
if(*p290 *p297) //大写字母加4,最大位不超出
*p2='A'+(*p2-90)-1;
if(*p2122) //小写字母加4,最大位不超出
*p2='a'+(*p2-122)-1;
p2++;
p++;
}
}
printf("原字符串为:%s\n加密后的字符串为:%s\n",str,str2);
return 0;
}