请教C语言试题

来源:百度知道 编辑:UC知道 时间:2024/05/24 20:20:33
输入密码电文(以句号结尾)按下列规律破译后输出;  
  数字0,12,...9分别由A,B,C,...,J代换; 
   小写英文字母k,m,p,t,y分别由其下一个后继字母代换; 
   大写英文字母U,W,R,Z分别由其上一个前导字母代换;  
  其它字母、符号及空格保持不变。

#include <stdio.h>
#include <ctype.h>
#include <string.h>
#define SIZE 128
int main()
{
char key_1[]="kmpty";
char key_2[]="UWRZ";
char IN[SIZE]={'\0'};
char c;
int i=0;
while((c=getchar())!='.')
{
if(isdigit(c)) c-=('0'-'A');
else if(strrchr(key_1,c)) c++;
else if(strrchr(key_2,c)) c--;
IN[i]=c;
i++;
}
IN[i]=c;
printf("%s",IN);
getch();
}

好难啊呵呵不好意思哦 帮不上~~我不是学C语言的合乎

不难 难的是你给了零分