C语言 编写函数int words
时间: 2024-02-09 22:10:05 浏览: 70
我理解您的问题是需要编写一个函数 int words,以下是一个示例代码:
```c
#include <stdio.h>
#include <ctype.h>
int words(char *str) {
int count = 0;
// 遍历字符串,如果当前字符是字母或数字,且下一个字符不是字母或数字,则认为是一个单词
while (*str) {
if (isalnum(*str) && (!isalnum(*(str + 1)) || *(str + 1) == '\0')) {
count++;
}
str++;
}
return count;
}
int main() {
char str[] = "Hello, world! This is a test string.";
int count = words(str);
printf("The number of words in the string is %d.\n", count);
return 0;
}
```
该函数的功能是统计一个字符串中的单词个数。该函数接受一个指向字符串的指针,返回一个整数。具体实现为:
1. 初始化计数器 count 为 0。
2. 遍历字符串,如果当前字符是字母或数字,且下一个字符不是字母或数字,则认为是一个单词,计数器 count 加 1。
3. 返回计数器 count。
在 main 函数中,我们定义一个测试用的字符串,并调用 words 函数来统计其中的单词个数。最后输出结果。
阅读全文