#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. Linux命令(19)用户权限管理:chown

    linux用户权限: Linux/Unix 是多人多工作业系统,所有的档案皆有拥有者.利用 chown 可以将档案的拥有者加以改变. 一般来说,这个指令只有是由系统管理者(root)所使用,一般使用者 ...

  2. eclipse导出jar包

    第一种:普通类导出jar包,我说的普通类就是指此类包含main方法,并且没有用到别的jar包. 1.在eclipse中选择你要导出的类或者package,右击,选择Export子选项: 2.在弹出的对 ...

  3. Android学习笔记01

    一. 创建Activity的要点: 1.继承Activity类2.需要重写onCreate方法3.需要在AndroidManifest.xml注册4.为Activity添加控件和内容5.setCont ...

  4. Linux下修改网卡的mac地址

    方法1: # ifconfig ethX down # ifconfig ethX hw ether NEW_MAC_ADDR # ifconfig ethX up 但是这样重启后就失效了,需要再敲一 ...

  5. 内存调试工具---valgrind

    安装 1.到www.valgrind.org下载最新版valgrind-3.2.3.tar.bz2 2.解压安装包:tar –jxvf valgrind-3.2.3.tar.bz2 3.解压后生成目录 ...

  6. 解决play framework play控制台乱码问题

    2.0以下版本 C:\Program Files\play-1.2.3\framework\pym\play 目录下的application.py  修改245行中的java_args.append( ...

  7. struts2的异常

    index.jsp <%@ page language="java" import="java.util.*" contentType="tex ...

  8. DELPHI SOKET 编程(使用TServerSocket和TClientSocket) 转

    http://www.cnblogs.com/findumars/p/5272658.html   本文采用delphi7+TServerSocket+TClientSocket; 笔者在工作中遇到对 ...

  9. poj 2240 Arbitrage bellman-ford算法

    点击打开链接 Arbitrage Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 13434   Accepted: 5657 ...

  10. Bootstrap栅格系统

    栅格系统分为两种:默认栅格系统 row,流式栅格系统 row-fluid. row 默认栅格系统:即指定了每个栅格的宽度为60px,间距为20px.共有12个栅格.总宽度为940px; 即12个栅格= ...