题目大意:
按照他给的字母,按键盘的排列顺序往左边推一个字母或符号输出。由于题目说不会出现QAZ`等字符,也不需要考虑回车退格键,所以我使用了一个字符串数组来把键盘的顺序储存起来,然后判断当前字符,输出下标减一的那个字符就可以了。(题目只需要大写字母。)
附上代码:

1 #include<stdio.h> 2 int main() 3 { 4 char a[]="`1234567890-=QWERTYUIOP[]\ASDFGHJKL;'ZXCVBNM,./",c;//把各个字符按键盘的顺序储存起来 5 int i; 6 while(scanf("%c",&c)!=EOF) 7 { 8 if(c==' '||c=='\n') printf("%c",c); 9 else 10 for(i=0;i<47;i++) 11 if(c==a[i]){printf("%c",a[i-1]);break;} 12 } 13 return 0; 14 }