原题链接:https://vjudge.net/problem/UVA-10082
分类:字符串
备注:常量数组
思路:用一个常量数组记录上键盘上的字符,根据输入的字符,如果不是空格和换行则选择数组中左侧字符输出。
代码如下:
C++11可过
#include<stdio.h>
#include<string.h>
char s[] = { "`1234567890-=QWERTYUIOP[]\\ASDFGHJKL;'ZXCVBNM,./" };
int main(void)
{
int len = strlen(s), flag[256];
for (int i = 0; i < len; i++)
flag[s[i]] = i;
char ch;
while (~scanf("%c", &ch))
{
if (ch == ' ' || ch == '\n')printf("%c", ch);
else printf("%c", s[flag[ch] - 1]);
}
return 0;
}
来源:CSDN
作者:Barsaker
链接:https://blog.csdn.net/TK_wang_/article/details/104348540