用C语言判断字符是否为空白字符或特殊字符的方法

C语言isspace()函数:判断字符是否为空白字符
头文件:

#include <ctype.h>

定义函数:

int isspace(int c);

函数说明:检查参数c是否为空格字符,也就是判断是否为空格(' ')、定位字符(' \t ')、CR(' \r ')、换行(' \n ')、垂直定位字符(' \v ')或翻页(' \f ')的情况。

返回值:若参数c 为空白字符,则返回非 0,否则返回 0。

附加说明:此为宏定义,非真正函数。

范例:将字符串str[]中内含的空格字符找出,并显示空格字符的ASCII 码。

#include <ctype.h>
main(){
  char str[] = "123c @# FD\tsP[e?\n";
  int i;
  for(i = 0; str[i] != 0; i++)
    if(isspace(str[i]))
      printf("str[%d] is a white-space character:%d\n", i, str[i]);
}

执行结果:

str[4] is a white-space character:32
str[7] is a white-space character:32
str[10] is a white-space character:9 // \t
str[16] is a white-space character:10 // \t

C语言ispunct()函数:判断字符是否为标点符号或特殊字符
头文件:

#inlude <ctype.h>

ispunct() 函数用来检测一个字符是否为标点符号或特殊字符,其原型为:

  int ispunct(int c);

【参数】c 为需要检测的字符。

【返回值】若 c 为标点符号或特殊符号(非空格、非数字和非英文字母)返回非 0 值,否则返回 0。

注意,此为宏定义,非真正函数。

【实例】列出字符串str 中的标点符号或特殊符号。

#include <stdio.h>
#include <ctype.h>
int main ()
{
  int i=0;
  int cx=0;
  char str[]="Hello, welcome!";
  while (str[i])
  {
    if (ispunct(str[i])) cx++;
    i++;
  }
  printf ("Sentence contains %d punctuation characters.\n", cx);
  return 0;
}

输出结果:

Sentence contains 2 punctuation characters.
(0)

相关推荐

  • 使用C语言判断英文字符大小写的方法

    C语言isupper()函数:判断字符是否为大写英文字母 头文件: #include <ctype.h> 定义函数: int isupper(int c); 函数说明:检查参数c是否为大写英文字母. 返回值:若参数c 为大写英文字母,则返回非 0,否则返回 0. 附加说明:此为宏定义,非真正函数. 范例:找出字符串str 中为大写英文字母的字符. #include <ctype.h> main(){ char str[] = "123c@#FDsP[e?"; i

  • 详解C语言中条件判断语句if和switch的用法

    if 语句 用 if 语句可以构成分支结构,它根据给的条件进行判定,以决定执行哪个分支程序段. C 语言的 if 语句有三种基本形式 第一种形式: if(条件表达式) { 语句1: } if(条件表达式) { 语句1: } 这种形式运行顺序为:当条件表达式为真,执行语句1,否则,直接跳过语句1,执行后面的语句. 例子1: BOOL result = YES: if(result) { printf("result is true\n"); } BOOL result = YES: if

  • C语言小程序 如何判断两个日期之差

    1.普通的写法 复制代码 代码如下: #include <stdio.h>int leapyear(int year){ if((year%4==0 && year%100!=0) || year%400==0)  return 1; else   return 0;}int days(int *day1, int *day2){ int i=0; int *tmp; int diff = 0; const int month[13]={0,31,28,31,30,31,30,

  • C语言判断回文数的小例子

    复制代码 代码如下: #include<stdio.h>#include<stdlib.h> int is_palindrome(char* para_str , int len); int main(int argc , char* argv[]){   int n = atol(argv[2]);     if (is_palindrome(argv[1],n))       printf("this string is palindrome !\n"); 

  • C语言中判断int,long型等变量是否赋值的方法详解

    当然,如果你不赋值给局部变量,这样会导致整个程序的崩溃,因为,它的内容被系统指向了垃圾内存.下面我们看一段代码: 复制代码 代码如下: #include <stdio.h>#include <string.h>#include <stdlib.h>int globle_value;int my_sum(int value1, int value2);long my_sub(long value1, long value2);int main(void){ int aut

  • 使用c语言判断100以内素数的示例(c语言求素数)

    从console输入一个数,判断这个数是否为素数(质数). 复制代码 代码如下: #include <stdio.h> /**判断100以内的素数*/ //定义函数判断是否是素数int isPrime(int num ){    int i;    //从2开始循环,一直到i的平方小于等于给定的数.    for (i = 2; i*i <= num; i++) {        if ( ( num % i ) == 0 ) {            return 0;       

  • c语言判断是否素数程序代码

    复制代码 代码如下: #include <stdio.h> bool isPrimeNum(int x){    if (x == 1)        return false;    else if (x <= 0)        return false;    else if (x == 2)        return true;    else    {        for (int i = 2; i < x; i++)        {            if (

  • 用C语言程序判断大小端模式

    1.大端模式,是指数据的低位保存在内存的高地址中,而数据的高位,保存在内存的低地址中:小端模式相反 2.为什么有大小端之分??? 因为在计算机系统中,存储是以字节为单位的,每个地址单元都对应着一个字节,一个字节=8bit.在C语言中除了8bit的char之外,还有16bit的short型,32bit的long型(要看具体的编译器).对于位数大于8位的处理器,例如16位或者32位的处理器,由于寄存器宽度大于一个字节,如何安排多个字节的存储,这就有了大端存储模式和小端存储模式 3.各自的优势: 小端

  • C语言菜鸟基础教程之判断

    (一) 先动手编写一个程序: #include <stdio.h> int main() { if(1) { printf("The condition is true!\n"); } return 0; } 运行结果: The condition is true! 再把1依次改为,2,5,100,-10,发现运行结果完全一样. 再改成if(0),此时发现没有运行结果,说明printf()语句没被执行. C语言把判断语句中的任何非0或非空的值当作真.所以if(1), if(

  • 用C语言判断字符是否为空白字符或特殊字符的方法

    C语言isspace()函数:判断字符是否为空白字符 头文件: #include <ctype.h> 定义函数: int isspace(int c); 函数说明:检查参数c是否为空格字符,也就是判断是否为空格(' ').定位字符(' \t ').CR(' \r ').换行(' \n ').垂直定位字符(' \v ')或翻页(' \f ')的情况. 返回值:若参数c 为空白字符,则返回非 0,否则返回 0. 附加说明:此为宏定义,非真正函数. 范例:将字符串str[]中内含的空格字符找出,并显

  • Go语言判断文件或文件夹是否存在的方法

    本文实例讲述了Go语言判断文件或文件夹是否存在的方法.分享给大家供大家参考,具体如下: Golang 判断文件是否存在有点怪异,是根据在操作文件时返回的错误信息来判断的,而不能直接根据路径判断 版本1: 复制代码 代码如下: func IsExists(path string) (bool, error) {     _, err := os.Stat(path)     if err == nil {         return true, nil     }     if os.IsNot

  • 利用JS判断字符串是否含有数字与特殊字符的方法小结

    前言 本文主要介绍的是利用JS判断字符串是否含有数字与特殊字符的方法,文中有几种不同的方法,包括普通的JS验证法.正则表达式法,另外还有判断是否为浮点数的js函数,在最后还将简要介绍下isNAN函数的使用方法和例子,来一起学习学习吧. 一.正则表达式方法判断是否为数字,包括判断正整数: function checkRate(input) { var re = /^[0-9]+.?[0-9]*$/; //判断字符串是否为数字,//若判断正整数,则后边是:/^[1-9]+[0-9]*]*$/ if

  • C语言判断字符是否为可打印字符的方法

    C语言isprint()函数:判断字符是否为可打印字符 头文件: #include <ctype.h> isprint() 函数用来判断一个字符是否为打印字符,其原型为: int isprint(int c); [参数]c 为需要被检测的字符. [返回值]如果 c 为可打印字符,将返回非 0 值,否则返回 0. 可打印字符的ASCII码值大于 0x1f(除了0x7f(DEL)),这些字符可以显示到屏幕上,让我们看到:不能显示在屏幕上,我们看不到的,叫控制字符,ASCII码值为 0x00 ~ 0

  • js判断字符是否是汉字的两种方法小结

    有时需要判断一个字符是不是汉字,比如在用户输入含有中英文的内容时,需要判断是否超过规定长度就要用到.用 Javascript 判断通常有两种方法. 1.用正则表达式判断 复制代码 代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xml

  • c#判断字符是否为中文的三种方法分享(正则表达式判断)

    1.用ASCII码判断 在 ASCII码表中,英文的范围是0-127,而汉字则是大于127,具体代码如下: 复制代码 代码如下: string text = "是不是汉字,ABC,柯乐义";       for (int i = 0; i < text.Length; i++)       {            if ((int)text[i] > 127)                  Console.WriteLine("是汉字");    

  • C#判断字符是否为汉字的三种方法分享

    1.用ASCII码判断 在 ASCII码表中,英文的范围是0-127,而汉字则是大于127,具体代码如下: 复制代码 代码如下: string text = "是不是汉字,ABC,柯乐义";       for (int i = 0; i < text.Length; i++)       {            if ((int)text[i] > 127)                  Console.WriteLine("是汉字");    

  • C语言 以字符形式读写文件详解及示例代码

    在C语言中,读写文件比较灵活,既可以每次读写一个字符,也可以读写一个字符串,甚至是任意字节的数据(数据块).本节介绍以字符形式读写文件. 以字符形式读写文件时,每次可以从文件中读取一个字符,或者向文件中写入一个字符.主要使用两个函数:fgetc()和fputc(). 字符读取函数 fgetc fgetc 是 file get char 的缩写,意思是从指定的文件中读取一个字符.它的原型为: int fgetc (FILE *fp); fp 为文件指针.fgetc() 读取成功时返回读取到的字符,

  • php判断字符以及字符串的包含方法属性

    下面介绍使用方法: 1. strstr: 返回一个从被判断字符开始到结束的字符串,如果没有返回值,则不包含 复制代码 代码如下: <?php /*如手册上的举例*/ $email = 'user@example.com'; $domain = strstr($email, '@'); echo $domain; // prints @example.com ?> 2. stristr: 它和strstr的使用方法完全一样.唯一的区别是stristr不区分大小写. 3. strpos: 返回bo

随机推荐