C语言统计单词个数

C语言统计单词个数,第1张

Q:输入一串字符串,输出其中有多少个单词。 

Eg:Good Wishes 

A:

#include <stdio.h>#include <string.h>#define SIZE 20int main()

{    char str[SIZE]={'\0'}   int count=0

printf("plz input the string\n")

gets(str)

puts(str)   int length = strlen(str)   for (int i=0i<lengthi++)

{

if(str[i]!=' ')

{            count++           while(str[i]!=' '&&str[i]!='\0')

{

i++

}

}

}

printf("%d\n",count)   return 0

}

‘\0’和‘0’的区别: 

在c语言中,它们都是字符,都用对应的ASCII码来存储。例如第一个ASCII码,0,对应字符为(Null),就是 ‘\0’,即空字符。我们在c语言中判断一个字符串是否结束的标志就是看是否遇到‘\0’,如果遇到‘\0’,则表示字符串结束。字符‘0’和数字0的区别:前者是字符常量,后者是整形常量,但是字符常量可以像整数一样在程序中参与相关运算。

扩展资料

字符串所有字符,如果当前字符不为空,单词数+1,再嵌套一个while循环,判断当前单带孙词是谈芦否结束。

#include <stdio.h>

#include <含行带string.h>

int count_words(char* s)

{

int len=strlen(s)

int count,i

for(i=0i<leni++)

{

if(*(s+i)!=' '){  // 如果当前代码不为空

count++ //单词数+1

while(*(s+i)!=' '&&i<len)  //判断当前单词是否结束

i++

}

}

return count

}

int main()

{

char* a="i love you"

printf("%d",count_words(a))

}

代码如下:

len(str.split())

其中str代表给出的英文句子。

代码解释:

1. 将句中液子切脊谈分成一个一个的单词。

str.split()是使用空格将英文句子分成一个一个的单词。空格是split方法的默认值,可以自行更改。返回值就是单词列表。

2. 统计单词数量。樱培碰

前面我们得到了单词的列表,len()方法可以统计列表的长度,这个长度就是单词的个数。

#include<iostream>

#include<fstream>

#include<string>

using namespace std

int main()

{

    string word

    int count=0//统计单词数

    ifstream f("d:\\12.txt")//此处你改成你文件存放的位置

    while (getline(f,word))//得宏扰到一行数据就count加一次乱凳

    {

        count++

    }

   哗绝旅 

    cout<<"单词的数量为"<<count<<endl

    return 0

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12551401.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-26
下一篇 2023-05-26

发表评论

登录后才能评论

评论列表(0条)

保存