C语言统计一个字符串中单词的个数
2016-04-11 10:18
267 查看
假定每一个单词用空格隔开。
样例:
输入:how are you!
输出:3
两种方法:
一:
另外一种:
样例:
输入:how are you!
输出:3
两种方法:
一:
#include <stdio.h> #include <string.h> #define SIZE 20 int main() { char str[SIZE]={'\0'}; int count=0; printf("please input the string\n"); gets(str); puts(str); int length = strlen(str); for (int i=0;i<length;i++) { //推断是不是空格不是的话在while里面i++运行推断到下一个空格的出现或是结束 if(str[i]!=' ') { count++; while(str[i]!=' '&&str[i]!='\0') { i++; } } } printf("%d\n",count); return 0; }
另外一种:
#include <stdio.h> #include <string.h> #define SIZE 20 int main() { char str[SIZE]={'\0'}; int count=0; int flag=0; printf("please input the string\n"); gets(str); puts(str); int length = strlen(str); for (int i=0;i<length;i++) { //推断是不是空格。是的话flag=0, //不是的话推断前面是不是空格即flag是否等于0。 //是空格的话说明是新单词的開始 if(str[i]==' ') { flag=0; } else { if(flag==0) { count++; flag=1; } } } printf("%d\n",count); return 0; }
相关文章推荐
- c++设计模式
- C++编程规范
- leetcode(二)—— Add Two Numbers(Python/C++)
- C++基本语法-----struct
- C++进阶
- BMP文件结构读写操作
- [C++]C++对象的生存周期
- C++中的左值和右值
- Effective C++ Item 37 绝不又一次定义继承而来的缺省參数值
- 合并排序的分析
- C/C++程序编译流程
- C++构造函数
- C/C++程序编译流程(预处理->编译->汇编->链接)细讲
- Google C++命名规范
- C语言文件遍历
- C语言时间转换
- C语言函数返回类型为指针时的一些问题
- 利用C语言创建和使用DLL文件
- [温故而知新] 《深度探索c++对象模型》——构造、析构、拷贝的语义
- c++继承详解之一——继承的三种方式、派生类的对象模型