Ceas Cipher in C w / getch()and putch()

时间:2016-12-15 10:44:56

标签: c

1.Im使用C GCC编译器,我得到两个警告,(代码编译虽然)
程序应该向用户询问chiper的值,然后它将告诉用户输入4位数,然后它将对它们进行抄送(用户输入的数字将不会显示在屏幕上,他输入的字母将被chipered当他输入时显示(chipered字母将代替原始字母)。当我运行程序时,我将值2作为chiper值。然后输入任何4个字母,它显示我:

(我输入的内容:abcd)

应显示:
输入(4位数字)cdef
按任意键继续 。 。

显示相反:
输入(4位数字)bcde
按任意键继续 。 。

 #include <stdio.h>
 #include <stdlib.h>
 #include <conio.h>//added because a comment
 int distanceFunction(int distance);
 void encryptFunction(int distance , char digit1 , char digit2 ,char digit3 , char digit4);
 int main(void)
   {
       char digit1;
       char digit2;
       char digit3;
       char digit4;
       int distance;
       printf("Enter Distance");
       encryptFunction(distance , digit1, digit2 , digit3 , digit4);
       system("PAUSE");
       return 0;

   }
   int distanceFunction(int distance)
   {
       scanf("%d" , &distance);
       return distance;
   }
   void encryptFunction(int distance , char digit1, char digit2 , char digit3 , char digit4)
   {
       distanceFunction(distance);
       printf("Enter (4 Digit Word)");

       getch("%c" , &digit1);
       digit1=(((int)digit1)+distance);
       putch("%c" , digit1);

       getch("%c" , &digit2);
       digit2=(((int)digit2)+distance);
       putch("%c" , digit2);

       getch("%c" , &digit3);
       digit3=(((int)digit3)+distance);
       putch("%c" , digit3);

       getch("%c" , &digit4);
       digit4=(((int)digit4)+distance);
       putch("%c" , digit4);
   }

1 个答案:

答案 0 :(得分:0)

distanceFunction(distance);传递以取消初始化变量并删除返回值。 试试distance=distanceFunction(1024); [代替] distanceFunction(distance); – BLUEPIXY