请求各位大神看看,有什么解决办法。
希望循环是否继续,但是结果是循环但感觉没经过中间的输入字符循环,希望求答案。#include <stdio.h>
void main()
{
char i;
do{
char c;
int letters=0,space=0,digit=0,other=0;
printf("请输入一行字符串\n");
while ((c=getchar())!='\n')
{
if ((c>='A' && c<='Z') || (c>='a' && c<='z'))
letters++;
else
if (c>='0' && c<='9')
digit++;
else
if (c==' ')
space++;
else
other++;
}
printf("字母数:%d\n空格数:%d\n数字数:%d\n其他字符数:%d\n",letters,space,digit,other);
printf("是否继续?(y/n)\n");
i=getchar();}
while(i=='y'||i=='Y');
}