int numwords(char a [] ){

  int i ,j ,num = 0 ;

  for ( i = 0 , j = strlen (a) ; i<j;){ //遍历a字符串

    while(a[i] == ' ') i++ ; //遇到空格时 跳过

    if(i<j) num++; //跳过空格 i<j 计数+1

    while(a[i] != ' ') i++; //跳过非空格

   }

  return num; // 返回单词数 

}

//这个是计算单词数的函数

 

这个是例子

#include <iostream>
#include <string>
using namespace std;

 

int k = 0 ;

int main (){
  char a[1000];
  char c;
  do{
    cin.get(c);
    a[k++] = c ;
  } while ( c!= '\n');
  int i , j , num = 0 ;

  for( i = 0 , j = k ; i < j; ){
    while (a[i] == ' ') i++;
    if ( i<j ) num++;
    while (a[i]!= ' ')i++;
  }
  cout<<num;
}

posted on 2018-11-14 09:53  likeghee  阅读(247)  评论(0编辑  收藏  举报