输入一行字符,统计单词个数

原创 2014年11月19日 21:50:56
#include<stdio.h>
int main()
{
	char string[81];
	int i;
	int num=0;//统计单词个数
	int word=0;//word=0表示未出现新单词;Word=1表示出现新单词

	char c;
	gets(string);
	for(i=0;(c=string[i])!='\0';i++)//只要字符不是'\0'就继续执行循环
	{
		if(c==' ')word=0;//如果是空格字符,是word=0
		else if(word==0)//如果不是空格字符且Word原值为0(Word原值为0表示前一个字符是空格)表示新单词出现
		{//word=0表示前一个字符是空格,word=1意味着前一个字符是非空格
			word=1;
			num++;
		}
	}
	printf("总共%d个字符\n",num);
}

法二是借鉴网上的:

输入一个字符串,求它包含多少个单词。单词间以一个或者多个空格分开。
第一个单词前,最后一个单词后也可能有0到多个空格。
比如:" abc    xyz" 包含两个单词,"ab   c   xyz    "  包含3个单词。

如下的程序解决了这个问题,请填写划线部分缺失的代码。

注意:只填写划线部分的代码,不要填写任何多余的内容。比如已经存在的小括号,注释或说明文字等。



#include<stdio.h>

int get_word_num(char* buf)
{
	int n = 0;   
	int tag = 1; 
	char* p = buf;
	
	for(;*p!=0 && *p!=13 && *p!=10;p++){
		if(*p==' ' && tag==0) tag=1;
		if(*p!=' ' && tag==1) { n++; tag=0; }   //填空:*p!=' ' && tag==1
	}
	
	return n;
}

int main()
{
	char buf[1000];
	fgets(buf,1000,stdin);
	
	printf("%d\n", get_word_num(buf));
	return 0;
}


输入一行字符,统计其中有多少单词,单词之间用空格隔开

问题描述:   输入一行字符,统计其中有多少单词,单词之间用空格隔开 解题思路: 判断单词是否出现,可以用空格的出现来判断(连续的若干空格看做成一个),若当前字符为空格,表明word未出现,...
  • ZongYinHu
  • ZongYinHu
  • 2015年04月11日 10:12
  • 2125

C语言统计一个字符串中单词的个数

假定每个单词用空格隔开。 例子: 输入:how are you! 输出:3 两种方法: 一: #include #include #define SIZE 20 int m...
  • abc5382334
  • abc5382334
  • 2014年05月24日 01:59
  • 38710

C语言:输入一行字符,统计其中有多少单词,单词之间用空格分隔开

题目:输入一行字符,统计其中有多少单词,单词之间用空格分隔开。 下面是运行结果: 下面是我编写的源代码: #include //输入一行字符,统计其中有多少单词,单词之间用空格分隔...
  • abzbi
  • abzbi
  • 2012年08月21日 16:09
  • 28514

循环-06. 统计一行文本的单词个数(15)

本题目要求编写程序统计一行字符中单词的个数。所谓“单词”是指连续不含空格的字符串,各单词之间用空格分隔,空格数可以是多个。...
  • ch717828
  • ch717828
  • 2015年02月27日 15:07
  • 1259

c语言:输入一行字符,分别统计出其中英文字母、空格、数字和其他字符的个数。

输入一行字符,分别统计出其中英文字母、空格、数字和其他字符的个数。解:程序:#include int main(){ char c; int letters=0,space=0,digit=0,oth...
  • yanxiaolx
  • yanxiaolx
  • 2016年05月29日 13:40
  • 10177

编写函数计算一个英文字符串中的单词个数。

题目内容:编写函数计算一个英文字符串中的单词个数。 输入格式: 一个最长500个字母的英文字符串,不包含数字和特殊字符,但可能包含一些英文标点符号(逗号、句点、问号)。标点符号独立出现时不视为一个单词...
  • CooperNiu
  • CooperNiu
  • 2017年04月01日 22:14
  • 1317

python小练习1:给一个字符串,统计其中的数字、字母和其他类型字符的个数

最近一直在学习python,在此之间,我无时无刻不在感受着python这个语言的强大魅力。比起C语言,他简单易懂、易学。其语法的简单便捷让我对他产生了不浓厚的兴趣,所以,现在在工作之余,我都会练习py...
  • MTbaby
  • MTbaby
  • 2016年10月12日 18:03
  • 10879

输入一行字符,统计其中有多少单词,单词之间用空格隔开

问题描述:   输入一行字符,统计其中有多少单词,单词之间用空格隔开 解题思路: 判断单词是否出现,可以用空格的出现来判断(连续的若干空格看做成一个),若当前字符为空格,表明word未出现,...
  • ZongYinHu
  • ZongYinHu
  • 2015年04月11日 10:12
  • 2125

有一行字符,统计其中的单词个数(单词之间以空格分隔),并将每一个单词的第一个字母改为大写

#define _CRT_SECURE_NO_WARNINGS #include #include #include #include #include #include void main() ...
  • QQfather
  • QQfather
  • 2014年05月14日 15:26
  • 1871

输入一行字符,统计有多少个单词

解题思路: 关键:怎样确定出现一个新单词 方法:从第一个字符逐个进行检查,判断此字符是否为新单词的开头,如果是num+1,最后num的值就是单词总数判断是否出现新单词,可以由是否由空格出现来决定(连续...
  • u012701023
  • u012701023
  • 2015年07月06日 19:09
  • 1719
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:输入一行字符,统计单词个数
举报原因:
原因补充:

(最多只允许输入30个字)