当循环时,就出现错误,不懂??
#include<stdio.h>
int main()
{
char i,a;
while(1)
{
scanf("%c",&a);
i=a-64;
printf("%c在第%d个位置,",a,i);
a+=4;
if(a>90) printf("其后第四个字母是%c\n",a-90+64);
else
printf("其后第四个字母是%c\n",a);
}
return 0;
}
第一个错误:
没有清空缓冲区,%c 读取字符时,会把你字符和换行符一起读取,所以第一次循环 a 是个字母,第二次循环 a 是个换行符,在循环中添加
while(getchar() != '\n')就可以解决;
第二个错误是:
无法结束循环,你可以把 a 初始化,a = 'a’;之后把while 的判断条件改一下。