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

求解答,关于getchar,该如何处理

2012-03-26 
求解答,关于getchar目的输入a输出e,b-f,输入w输出a,z-d等等。请问为什么不能输入字符串,输出字符串?例如输

求解答,关于getchar
目的输入a输出e,b-f,输入w输出a,z-d等等。
请问为什么不能输入字符串,输出字符串?
例如输入china,输出glmre?
如何更改以实现?

C/C++ code
#include<stdio.h>void main(){    char c;    while ((c=getchar())!='\n');    {    if((c>='A'&&c<='Z'-4)||(c>='a'&&c<='z'-4))        {            c=c+4;        }    else if((c>('Z'-4)&&c<'a')||(c>('z'-4)&&c<='z'))        {            c=c-22;        }    else c=c;    }    printf ("%c\n",c);}

目的输入a输出e,b-f,输入w输出a,z-d等等。
请问为什么不能输入字符串,输出字符串?
例如输入china,输出glmre?
如何更改以实现?

[解决办法]
while ((c=getchar())!='\n');
这里多了个';'导致后面的判断只有当出了循环才能进行一次
[解决办法]
while ((c=getchar())!='\n')
{

}
[解决办法]
while ((c=getchar())!='\n'); 一直在这条语句循环
[解决办法]
#include<stdio.h>
void main()
{
char c;
while ((c=getchar())!='\n') //这个地方分号去掉
{
if((c>='A'&&c<='Z'-4)||(c>='a'&&c<='z'-4))
{
c=c+4;
}
else if((c>('Z'-4)&&c<'a')||(c>('z'-4)&&c<='z'))
{
c=c-22;
}
else c=c;
printf ("%c",c); //这个要放在while循环里面
}
putchar('\n');
}



热点排行