这里始终出现问题,后来才发现char *str[51]这里不能加星花,改成这样就成功了char str[51]
虽然不知道为什么,但是如果出现这种情况大家也可以参考参考,大佬也可以在评论区多多指正,谢谢。
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <ctype.h>
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
int tongji(char str[51]) {
int alpha = 0;
int num = 0;
int space = 0;
int other = 0;
int i;
for (i = 0; i <strlen(str); i++) {
if((str[i]>='a')&&(str[i]<='z')||(str[i]>='A')&&(str[i]<='Z'))
{
alpha++;
}
else
{
if(str[i]>='0'&&str[i]<='9')
{
num++;
}
else
{
if(str[i]==' ')
{
space++;
}
else
{
other++;
}
}
}
}
printf("a-z,A-Z:%d\n", alpha);
printf("0-9:%d\n", num);
printf("空格:%d\n", space);
printf("other:%d\n", other);
}
int main() {
char str[51];
fgets(str,50,stdin);
tongji(str);
return 0;
}
这个是此题的完整代码