首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

输出键盘左边的数或字母符号,该如何处理

2012-03-28 
输出键盘左边的数或字母符号#includeiostreamusing namespace stdint a[10000]{0}int main(){char c

输出键盘左边的数或字母符号
#include<iostream> 
using namespace std;
int a[10000]={0};
int main()
{
  char c;int i;
  char s[]={"`1234567890-=qwertyuiop[]\\asdfghjkl;'zxcvbnm,./"};
  while(scanf("%c",&c)!=EOF)
  {
  for( i=1;s[i]&&s[i]!=c;i++);
  if(s[i])
  { 
  putchar(s[i-1]);
  }
  else putchar(c); 
  }
  system("pause");return 0;


为什么有两个\\我修改只用一个\结果 输入a还是输出a为什么?

[解决办法]
\在这里是转义字符,当你是...[]\asd...,输入a的时候他是找不到a的,即if(s[i])不成立,所以就输出了你输入的字符'a'
[解决办法]
如果是\\的话 字符串里边才真正的是..[]\asdfg...,那么你输入a,他就会输出前一个字符'\'

热点排行