【发布时间】:2021-05-13 12:06:04
【问题描述】:
char str[100];
fgets(str,100,stdin);
int i;
int alpha=0;
int space=0;
int cntrl=0;
while(str[i])
{
if(isalpha(str[i]))
{
printf("%c is an alphabet\n",str[i]);
alpha++;
}
if(isspace(str[i]))
{
printf("%c is a whitespace\n",str[i]);
space++;
}
if(iscntrl(str[i]))
{
printf("%c is a control character\n",str[i]);
cntrl++;
}
}
printf("You have %d alphabet\n",alpha);
printf("Your input has %d whitespace\n",space);
printf("Your input has %d control character\n",cntrl);
即使在我没有使用空格之后,它总是显示一个空格也控制字符,我认为这与数组大小有关。我该如何解决?
【问题讨论】:
标签: arrays controls whitespace fgets alphabetical