#include <stdio.h>

#include<string.h> 


int main(void)

{

int a=0,i;

char b[200],c[200],f;

while(1)

{

fflush(stdin);

printf(" 실행할 프로그램을 선택하세요 ");

printf("암호화=E ");

printf("복호화=D ");

printf("종료=Q ");

scanf("%c",&f);

fflush(stdin);

switch(f)

{

case'E':

case'e':

printf("시저 암호화 프로그램 ");

printf("약속한 키값(Offset)은 얼마입니까?(ex)3,4,5..etc): ");

scanf("%d",&a);

printf("plain text를 입력하시오: ");

scanf("%s",b);

if(a>26)

      a=a % 26; //0<=key<26.


      for(i=0;i<strlen(b);i++)  

      {     

       if(b[i]==' ')   

        {  

          continue;

        }

       else  

        {   

          if(b[i]>= 'x')  

           {  

            b[i]=b[i]-26;  

            }  


           b[i]=b[i]+a;  

          }  

     }  

      printf("Chiper Text는 %s입니다 ",b); 

a=0;

i=0;

break;

case'D':

case'd':

printf("시저 복호화 프로그램 ");

printf("약속한 키값(Offset)은 얼마입니까?(ex)3,4,5,..etc): ");

scanf("%d",&a);

printf("Chiper Text를 입력하시오: ");

scanf("%s",c);

  if(a>26)

a=a % 26;

for(i=0; i<strlen(c); i--)

{

if(c[i]==' ')

{

continue;

}

else

{

if(c[i]<= 'c')

{

c[i]=c[i]+26;

}

c[i]=c[i]-a;

}

}

printf("Plain Text는 %s입니다 ",c);

break;

case 'Q':

case 'q':

printf("프로그램을 종료합니다. ");

break;  


 }

return 0;

}


제가 c언어를 못해서 친구한테 대충 설명듣고 만들었는데 복호화를 못하겠어요

복호화는 암호화를 반대로 하라고 하는데 뭐 제 생각에는 반대로 만든거같은데 자꾸 엉뚱하게 나와요