方法一:
#include <stdio.h>
#include <string.h>
int main(){
int k=0,i=0;
char s[100];
gets(s);
while(s[i]==' '){ //当开头是空格
i++;
}
while(s[i]!='\0'){
if(s[i-1]!=' '&&s[i]==' '){
k++;
}
i++;
}
if(s[i-1]!=' ') //如果不是以空格结尾
k++;
printf("%d",k);
return 0;
}
// *
// Let's go to room 209 /n
方法二:
#include <stdio.h>
#define max 1000
int main(void)
{
int count=0,flag=1; //flag初始化为1,保证开头是否有空格都满足要求
char str[max];
char *p;
gets(str);
for(p=str;;p++)
{
if(*p=='\0')
break;
if(*p==' ')
flag=1;
if(*p!=' '&&flag==1)
{
count++;
flag=0;
}
}
printf("%d",count);
return 0;
}