引言
在学习数组时会碰到这样的问题 统计单词个数
统计输入字符串中的单词个数:编写一个程序,假设单词是以空格分隔
核心思路
单词数=空格数+1
这里使用最简单易于理解的方法 运用数组与循环即可解答
创建一个数组提供语句输出空间 利用for循环中设置一个判断语句 从首元素依次检查空格数量
那么下面我将会演示程序的实现以及对代码的解读。
代码与详解如下
#include <stdio.h>
main()
{
//使用count记录空格数 由于输入语句单词必须大于1才合法
//故初始化count为1
int count=1,i;
//初始化容纳字符的数组适当大小
char arr[100]={0};
printf("请输入一句英语:\n");
//输入字符
gets(arr);
//for循环次数达到数组上限 确保结果准确
for(i=0;i<sizeof(arr);i++)
{
//从第一个元素的后一位开始检查空格
if(arr[i+1]==' ')
count++;
}
printf("此句单词个数为%d个",count);
}
补充:在 C 语言中,sizeof() 是一个判断数据类型或者表达式长度的运算符。这里的·sizeof()中是数组的大小,返回值为100。