#include <stdio.h>

 /*
给出一字符串指针,计算出字符串指针中单词数,
单词不包括'.',',',';','?','_','"',由0-9数字或26个字母组成
by zww @ 2013.09.26
vc 6.0编译通过
*/ unsigned int get_string_word_cnt(const char* pStr)
{
unsigned int iCnt= ;
unsigned int iCharCnt = ;
const char* p = pStr; if (NULL == pStr)
{
return ;
} while ('\0' != *p)
{
if (('.' == *p)
|| (',' == *p)
|| (';' == *p)
|| ('?' == *p)
|| (' ' == *p)
|| ('_' == *p)
|| ('"' == *p))
{
printf("[%c]",*p);
iCharCnt=;
}
else if (!((*p >= 'a'&& *p<='z')
|| (*p >='A' && *p<='Z')
|| (*p >= '' && *p <='')))
{
printf("[%c]",*p);
iCharCnt = ;
}
else if ( == iCharCnt)
{
iCharCnt++;
iCnt++;
} p++;
} return iCnt;
} int main()
{
char * str1 = "hello world.1...2";
char * str2 = "hello world.sd,fg!@!$!$!!!!!!!!!!!!hj.";
char * str3 = "hello world.fdfg)(*&&&*(hjdfh?>><>,...";
char * str4 = ".hello world.12";
int i = ;
i = get_string_word_cnt(str1);
printf(" %d\r\n",i);
i = get_string_word_cnt(str2);
printf(" %d\r\n",i);
i = get_string_word_cnt(str3);
printf(" %d\r\n",i);
i = get_string_word_cnt(str4);
printf(" %d\r\n",i); return ;
} /**
显示结果如下:
[ ][.][.][.][.]4
[ ][.][,][!][@][!][$][!][$][!][!][!][!][!][!][!][!][!][!][!][!][.]5
[ ][.][)][(][*][&][&][&][*][(][?][>][>][<][>][,][.][.][.]4
[.][ ][.]3
Press any key to continue
**/

【c实现,vc6调试通过】给出一字符串指针,计算出字符串指针中单词数的更多相关文章

  1. 【java小工具】从.java文件中筛选出方法,并计算出方法在这些文件中出现的次数

    package getMethod; import java.io.*; import java.util.*; import java.util.regex.Matcher; import java ...

  2. 【OJ】 : 容斥原理计算出 1< =n < 1e9 中是2,3,5倍数的整数的数量

    最近ACM时遇到个题,题意如下. 问题描述: 有个1到n的数列,数一下其中能够被 2, 的时候有 ,,,,.这5个数满足条件,所以我们应该输出 5 . 输入 多组输入到文件尾,每组输入一个 n (n ...

  3. 使用switch计算出某年某月某日是今年的第几天,输出一直是当月天数

    package com.cx.Switch; import java.util.Scanner; /** * 计算出某年某月某日是今年的第几天 * 使用switch */ public class S ...

  4. C#:比较二个字符串,查找出相同字数和差异字符

            ;; i < n; i++)             {                 ) == s2.Substring(i, ))                 /*同位 ...

  5. 根据地图上的两个点各自的x,y坐标,计算出2点之间的直线距离。显示为公里、米

    /** * calc_map_distance() , 根据地图上的两个点各自的x,y坐标,计算出2点之间的直线距离 * @param array $point_1 第1个点的x,y坐标 array( ...

  6. OA项目之弹出层中再弹出层

    弹出层中再弹出一层如图: <asp:TextBox runat="server" ID="txtUName" CssClass="span2&q ...

  7. Excel中利用IF和TIME函数计算出上下班状态!

    大家都知道现在上下班实行打卡制,制作考勤的人员需要对你上下班的时间,计算出上下班的状态,比如:迟到.早退.加班.正常等.下面为您介绍一个“帮手”.     1.打开Excel文档.如下图       ...

  8. PHP 计算出内存最高占用.

    PHP 计算出内存最高占用.   代码可以计算出内存是否完全被使用, ini设置处:memory_limit = 1024M  代码跑完将显示如下信息: memory_limit:320M  all ...

  9. PHP版根据经纬度和半径计算出经纬度的范围

    百度地图提供了范围搜索的功能,但是它使用的是百度自己的数据,但是有时候我们需要使用自己的数据,显示在地图上.比如给定两个参数:指定位置(某一处的经纬度lnglat)和搜索半径(r),搜索指定范围内的数 ...

随机推荐

  1. ubuntu更换源后报错:W: GPG error: (转载)

    From:http://www.njava.com/njava-626.html 更换163源后,更新源时出现错误. # apt-get update W: GPG error: http://ext ...

  2. android之datepicker控件用法

    <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android=&quo ...

  3. iOS学习笔记总结整理

    来源:http://mobile.51cto.com/iphone-386851_all.htm 学习IOS开发这对于一个初学者来说,是一件非常挠头的事情.其实学习IOS开发无外乎平时的积累与总结.下 ...

  4. centos的软件安装方法rpm和yum

    centos的软件安装大致可以分为两种类型: [centos]rpm文件安装,使用rpm指令  类似[ubuntu]deb文件安装,使用dpkg指令 [centos]yum安装   类似[ubuntu ...

  5. JAVA 中关于String的特性

    一.初始化String的两种方式 String str1 = "hello"; String str2 = new String("hello"); 第一种方式 ...

  6. Golang 图片上绘制文字

    之前介绍过使用 FreeType-go 来绘制字(http://www.cnblogs.com/ghj1976/p/3445568.html),  现在相关的包被做了整合,主要是整合到了 github ...

  7. PYTHON ASYNCIO: FUTURE, TASK AND THE EVENT LOOP

    from :http://masnun.com/2015/11/20/python-asyncio-future-task-and-the-event-loop.html Event Loop On ...

  8. Maven依赖范围及依赖传递

    一: 依赖范围scope 共5种,compile (编译).test (测试).runtime (运行时).provided.system 不指定,则依赖范围默认为compile. compile:编 ...

  9. ORA-00245: control file backup failed; target is likely on a local file system (转载)

    环境:DB VERSION: 11.2.0.4.0RAC 2 nodes 问题:邮件显示rman备份失败,查看rman备份日志 Starting Control File and SPFILE Aut ...

  10. oracle rac 日志体系结构!

    告警日志集群节点集群件告警日志:$GRID_HOME/log/<hostname>/alert<hostname>.log数据库实例的告警日志:$DIAG_DESTINATIO ...