求解答,关于getchar,该如何处理
求解答,关于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');
}