问题描述
编写一个程序,输入一个字符串(长度不超过80),然后统计出该字符串当中包含有多少个单词。例如:字符串“this is a book”当中包含有4个单词。
输入格式:输入一个字符串,由若干个单词组成,单词之间用一个空格隔开。
输出格式:输出一个整数,即单词的个数。
输入输出样例
用户输入数据样例:
this is a book
系统输出数据如下:
4
#include <iostream>
#include <cstdio>
#include <cstring>
using namespace std;
int main()
{
// string s, t ,maxt;
int j=0, max = 0;
// getline(cin, s);
char* t;
char s[100000];
char *maxt;
gets(s);
//getchar();
t = strtok(s, " ");
while(t)
{
max ++;
// cout << strlen(t) << endl;
//if(max < strlen(t))
{
maxt = t;
// max = strlen(t);
// cout << t << " " << maxt << endl;
}
t = strtok(NULL, " ");
}
cout << max << endl;
//下面注释掉的最后一个单词不能maxt
// cout << s << endl;
/* for(int i=0; s[i]; i++)
{ cout << t << j << endl;
if(s[i+1] == '\n')
{
// cout << t << j << endl;
if(max < j)
{
max = j;
maxt = t;
}
}
if(s[i] != ' ')
{
t += s[i];
j++;
}
else if(s[i] == ' ' )
{
cout << t << j << endl;
if(max < j)
{
max = j;
maxt = t;
t = "";
j = 0;
}
}
}
cout << maxt << endl;
*/
return 0;
}