qq_43412960
qq_43412960
2019-10-27 19:40
采纳率: 79.1%
浏览 556

这是一个C语言判断字符个数程序的相关问题

#include<stdio.h>
#include<conio.h>
#include<string.h>
int main()
{
int space=0; int letters=0; int digit=0;int others=0;;
char str[20];
printf("请输字符串:");

gets(str);
for(int i=0;i<strlen(str);i++)
 if(str[i]==' ')
    { space++;
     continue;
    }
 else  if(str[i]>='0'&&str[i]<='9')
 {
 digit++;
 continue;
 }
 else  if((str[i]>='a'&&str[i]<='z')||str[i]>='A'&&str[i]<='Z') 
      letters++;
 else 
      others++;

printf("字母个数为%d,空格个数为:%d,数字个数为:%d,其他字符个数为:%d",letters,space,digit,others);
  getch();
    return 0;
}

这是我写的一个识别出各种字符个数的相关问题。空格个数和其他字符个数判断不对,我又找不到毛病。还请各位大佬帮忙看一下

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

1条回答 默认 最新

  • qq_41461536
    科恩大帝 2019-10-27 20:59
    已采纳

    你加个大括号试试,我测试了一下没出现问题,或者你告诉我一下你的测试用例?

    for(int i=0;i<strlen(str);i++){
        if(str[i]==' ')
        { space++;
         continue;
        }
     else  if(str[i]>='0'&&str[i]<='9')
     {
     digit++;
     continue;
     }
     else  if((str[i]>='a'&&str[i]<='z')||str[i]>='A'&&str[i]<='Z') 
          letters++;
     else 
          others++;
    }
    
    点赞 评论

相关推荐