【C语言】ctype.h——全部函数的介绍与代码示例

包含一些用于字符处理的函数原型和宏定义。这个头文件提供了一组函数,用于检查和转换字符。

isalnum

函数原型:int isalnum(int ch);

功能: 判断字符是否为字母或数字

参数: int ch 待检查的字符

返回值: 如果 ch 不是字母或数字,返回 0;如果 ch 是字母或数字,返回非0值

  • 判断输入的字符是否为字母或数字

    #include <ctype.h>
    #include <stdio.h>
    
    int main() {
        char ch;
        printf("输入一个字符:");
        scanf("%c", &ch);
        if (isalnum(ch)) {
            printf("%c 是字母或数字.", ch);
        } else {
            printf("%c 不是字母或数字.", ch);
        }
        putchar('\n');
        return 0;
    }
    

isalpha

函数原型: int isalpha(int ch);

功 能: 判断字符是否为英文字母

参数: int ch 待检查的字符

返回值: 如果 ch 不是英文字母,返回 0;如果 ch 是英文字母,返回非0值

  • 判断输入的字符是否为英文字母

    #include <ctype.h>
    #include <stdio.h>
    
    int main() {
        char ch;
        printf("输入一个字符:");
        scanf("%c", &ch);
        if (isalpha(ch)) {
            printf("%c 是字母.", ch);
        } else {
            printf("%c 不是字母.", ch);
        }
        putchar('\n');
        return 0;
    }
    

iscntrl

函数原型: int iscntrl(int ch);

功 能: 判断字符是否为控制字符

参数: int ch 待检查的字符

返回值: 如果 ch 不是控制字符,返回 0;如果 ch 是控制字符,返回非0值

  • 判断输入的字符是否是控制字符

    #include <ctype.h>
    #include <stdio.h>
    #include <conio.h>
    
    int main() {
        char ch;
        printf("输入一个字符:");
        ch = getche();
        if (iscntrl(ch)) {
            printf("\n%c %d 是控制字符.", ch, ch);
        } else {
            printf("\n%c %d 不是控制字符.", ch, ch);
        }
        putchar('\n');
        return 0;
    }
    

isdigit

函数原型: int isdigit(int ch);

功 能: 判断字符是否为十进制数字

参数: int ch 待检查的字符

返回值: 如果 ch 不是十进制数字,返回 0;如果 ch 是十进制数字,返回非0值

  • 判断输入的字符是否为十进制数字

    #include <ctype.h>
    #include <stdio.h>
    
    int main() {
        char ch;
        printf("输入一个字符:");
        scanf("%c", &ch);
        if (isdigit(ch)) {
            printf("%c 是数字.", ch);
        } else {
            printf("%c 不是数字.", ch);
        }
        putchar('\n');
        return 0;
    }
    
    

islower

函数原型:int islower(int ch);

功能:判断字符是否为小写英文字母

参数:int ch 待检查的字符

返回值:ch不是小写英文字母 返回0,ch是小写英文字母 返回非0

  • 判断输入的字符是否为小写英文字母

    #include <ctype.h>
    #include <stdio.h>
    
    int main()
    {
        char ch;
        printf("输入一个字符:");
        scanf("%c", &ch);
        if (islower(ch))
        {
            printf("%c 是小写字母.", ch);
        }
        else
        {
            printf("%c 不是小写字母.", ch);
        }
    
        putchar('\n');
        return 0;
    }
    
    

isupper

函数原型:int isupper(int ch);

功能:判断字符是否为大写英文字母

参数:int ch 待检查的字符

返回值:ch不是大写英文字母 返回0,ch是大写英文字母 返回非0

  • 判断输入的字符是否为大写英文字母

    #include <ctype.h>
    #include <stdio.h>
    
    int main()
    {
        char ch;
        printf("输入一个字符:");
        scanf("%c", &ch);
        if (isupper(ch))
        {
            printf("%c 是大写字母.", ch);
        }
        else
        {
            printf("%c 不是大写字母.", ch);
        }
    
        putchar('\n');
        return 0;
    }
    
    

isspace

函数原型:int isspace(int ch);

功能:判断字符是否为空白字符

参数:int ch 待检查的字符

返回值:ch不是空白字符 返回0,ch是空白字符 返回非0

  • 判断输入的字符是否为空白字符

    #include <ctype.h>
    #include <stdio.h>
    
    int main()
    {
        char ch;
        printf("输入一个字符:");
        scanf("%c", &ch);
        if (isspace(ch))
        {
            printf("%c 是空白字符.", ch);
        }
        else
        {
            printf("%c 不是空白字符.", ch);
        }
    
        putchar('\n');
        return 0;
    }
    
    

isxdigit

函数原型:int isxdigit(int ch);

功能:判断字符是否为十六进制数字(0-9)(a-f)(A-F)

参数:int ch 待检查的字符

返回值:ch不是十六进制数字 返回0,ch是十六进制数字 返回非0

  • 判断输入的字符是否为十六进制数字

    #include <ctype.h>
    #include <stdio.h>
    
    int main()
    {
        char ch;
        printf("输入一个字符:");
        scanf("%c", &ch);
        if (isxdigit(ch))
        {
            printf("%c 是十六进制数.", ch);
        }
        else
        {
            printf("%c 不是十六进制数.", ch);
        }
    
        putchar('\n');
        return 0;
    }
    
    

toupper

函数原型:int touppper(int ch);

功能:把小写字母转换为大写字母,不是小写字母的不变

参数:int ch - 待转换的字符

返回值:返回转换后的字符

  • 将文件1中的内容全部大写复制进文件2中

    while ((ch = getc(fp1)) != EOF){ // 核心代码!
    		putc(toupper(ch), fp2);
    }
    

tolower

函数原型:int tolower(int ch);

功能:把大写字母转换为小写字母,不是大写字母的不变

参数:int ch - 待转换的字符

返回值:返回转换后的字符

  • 将文件1中的内容全部小写复制进文件2中

    while ((ch = getc(fp1)) != EOF){ // 核心代码!
    		putc(tolower(ch), fp2);
    }
    

toascii

函数原型:int toascii(int ch);

功能:把一个字符转换为ASCII,其实就是把八位二进制的最高变成0

参数:int ch - 待转换的字符

返回值:返回转换后的字符

  • 把一个非ASCII字符转换为ASCII字符

    #include <ctype.h>
    #include <stdio.h>
    
    int main() {
       int ch1, ch2;
    
       ch1 = 'a' + 128;
       ch2 = toascii(ch1);
    
       printf("变 %c  为 %c.\n", ch1, ch2);
    
       return 0;
    }
    
    

ispunct

函数原型:int ispunct(int ch);

功能:判断字符是否为标点符号

参数:int ch - 待检查的字符

返回值:如果ch不是标点符号返回0,如果ch是标点符号则返回非0

  • 判断输入的字符是否为标点符号

    #include <ctype.h>
    #include <stdio.h>
    
    int main() {
       char ch;
    
       printf("输入一个字符:");
       scanf("%c", &ch);
    
       if (ispunct(ch)) {
          printf("%c 是标点符号.", ch);
       }
       else {
          printf("%c 不是标点符号.", ch);
       }
    
       putchar('\n');
    
       return 0;
    }
    
    

isprint

函数原型:int isprint(int ch);

功能:判断字符是否为可打印字符(含空格)

参数:int ch - 待检查的字符

返回值:如果ch不是可打印字符返回0,如果ch是可打印字符(含空格)则返回非0

  • 判断输入的字符是否为可打印字符(含空格)

    #include <ctype.h>
    #include <stdio.h>
    
    int main() {
       char ch;
    
       printf("输入一个字符:");
       scanf("%c", &ch);
    
       if (isprint(ch)) {
          printf("%c 是可打印字符.", ch);
       }
       else {
          printf("%c 不是可打印字符.", ch);
       }
    
       putchar('\n');
    
       return 0;
    }
    
    

isgraph

函数原型:int isgraph(int ch);

功能:判断字符是否除空格外的可打印字符

参数:int ch - 待检查的字符

返回值:如果ch不是除空格外的可打印字符返回0,如果ch是除空格外的可打印字符则返回非0

  • 判断输入的字符是否为除空格外的可打印字符

    #include <ctype.h>
    #include <stdio.h>
    
    int main() {
       char ch;
    
       printf("输入一个字符:");
       scanf("%c", &ch);
    
       if (isgraph(ch)) {
          printf("%c 是除空格外的可打印字符.", ch);
       }
       else {
          printf("%c 不是除空格外的可打印字符.", ch);
       }
    
       putchar('\n');
    
       return 0;
    }
    
    

isascii

函数原型:int isascii(int ch);

功能:判断字符是否为ASCII码,即字符ASCII在0到127之间

参数:int ch - 待检查的字符

返回值:如果ch不是ASCII返回0,如果ch是ASCII则返回非0

  • 判断输入的字符是否为ASCII字符

    #include <ctype.h>
    #include <stdio.h>
    
    int main() {
       char ch;
    
       printf("输入一个字符:");
       ch = getchar();
    
       if (isascii(ch)) {
          printf("%c 是ASCII码.", ch);
       }
       else {
          printf("%c 不是ASCII码.", ch);
       }
    
       putchar('\n');
    
       return 0;
    }
    
    
  • 62
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值