c语言在一段段落中匹配一个单词出现次数
2015-10-15 20:17
330 查看
#include<stdio.h> int match(char *a,char *b)//a表示输入的英文段落 b表示即将要匹配的单词 { char *temp; //用来存放匹配的单词 int count = 0; // temp = b; //用temp将b存储 while(*a!='\0') //用来判断a段落是否扫描完 { if(*a == *temp) temp++; else temp = b; //只要有一次不等于就刷新注意地址指向的值始终只有一个元素 a++; //操作完成了再来移动段落 if(*temp == '\0') { count++; temp = b; //刷新temp } } return count; } int main() { char a[1000],b[100]; printf("输入段落:\n"); gets(a); printf("输入单词:\n"); gets(b); printf("单词个数:%d\n",match(a,b)); getchar(); getchar(); }
重点
1.关于字符串的几个常识
指针只是指向字符串的头地址
一个一个的匹配
注意操作带不带*号
相关文章推荐
- c++primer——面向对象编程
- C语言重要知识点总结(一)
- 关于c语言逆序输出
- c++友元方法
- C语言的整型溢出问题
- 爬爬爬之路:C语言(六) 函数篇
- C++类成员初始化
- 【C++】状态模式
- 【C++】强制类型转换(static_cast,reinterpret_cast,const_cast,dynamic_cast,explicit)
- C++中顶层const和底层const
- 栈的链式存储方法的C语言实现
- C++中四种类型转换
- VC++中LNK2001错误
- 【C疯狂的教材】(四)C语言分支语句
- C++自定义函数
- C++ 静态局部变量用法详解
- 如何在ROS下编写自己的节点来订阅话题(C++)
- C++中创建、初始化以及删除 以变量为大小的动态二维数组
- c++primer——面向对象编程关键字
- C语言容易混淆的问题