求:我用C语言编写的数据加密和解密,但是调试不出来,请高手帮我看一下

来源:百度知道 编辑:UC知道 时间:2024/05/24 18:19:07
#include"stdio.h"
#define n 8
void main()
{
int code,count=0,i=0,temp,j;
int key[n],num[n];
printf("请输入密码:");
scanf("%d",&code);
while(code!=0)
{
key[i]=code%10;
code=code/10;
i++;
count++;
}

for(i=0;i<count;i++)
{
key[i]+=5;
key[i]=key[i]%10;

}
temp=key[0];
key[0]=key[count-1];
key[count-1]=temp;
printf("\t======数据加密=======\n");
printf("加密数据为:");
for(i=0;i<count;i++)
{
printf("%d",key[i]);
}
printf("\n");

printf("\t======数据解密=======\n");
printf("\n请输入加密数据:");
count=0;
for(i=0;i<n;i++)
{
scanf("%d",&num[i]);
count++;
}

temp=num[0];
num[0]=num[count-1];
num[count-1]=temp;

for(i=0;i<count;i++)<

主要是scanf的数据代入了下一步的运算,相当于上一步就已经把下一步的输入输进去了
scanf就是有这个不好的地方,两个scanf之间有影响

在printf("\t======数据解密=======\n"); 前加一个
fflush(stdin);清空一下

还有就是,你的第二步的输入,要按一个回车才能得到一个数,最好按你第一步的方法来