加入收藏 | 设为首页 | 会员中心 | 我要投稿 晋中站长网 (https://www.0354zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

C语言——字符/字符串处理函数(1)

发布时间:2022-10-24 15:02:29 所属栏目:MsSql教程 来源:转载
导读: 本文讲解最常用的和最有用的字符和字符串函数。
一、字符测试函数
字符测试函数可以用来准确判断程序接收到输入字符的类型,可以根据字符测试的结果,设置if逻辑来执行特定的行为。注意:使

本文讲解最常用的和最有用的字符和字符串函数。

一、字符测试函数

字符测试函数可以用来准确判断程序接收到输入字符的类型,可以根据字符测试的结果,设置if逻辑来执行特定的行为。注意:使用这里介绍的字符函数时,在程序的顶部必须包含CTYPE.H头文件。

1.isalpha()

isalpha()函数返回真(对于C语言来说是1),如果括号里的值是从a到z(或大写的A到Z)的字母。而如果括号里的值是任何其它字符,就返回假(对于C语言来说是0)。

2.isdigit()

如果括号里字符是从0到9的数字,返回真(1),否则返回假(0)。

因为isalpha()和isdigit()都测试字符的内容并返回测试的结果,所以这两个函数被称为字符串测试函数。

例:

#include 
#include 
int main(void)
{    char c;
    printf("input a character:");
    c = getchar();
    if(isalpha(c))
        printf("Your input was a lettrt.\n");
    else if(isdigit(c))
        printf("your inoput  was  a num.\n");
      return 0;
}

二、大小写测试函数

isupper()和islower()函数使你知道一个变量是否包含了大写或小写的值。

可以使用isupper()测试大写字母一样,用来确保用户在输入名字时输入大写字母。

例:判断输入字符串第一个字符是否为大写字母。

#include 
#include 
int main(void)
{
    char ch[20];
    int i=0;
    printf("input a string:");
    gets(ch);
 
    while(ch[i])
    {   if(i==0)
        {    if(!isupper(ch[i]))
             {   printf("Your input not was a upper character.\n");
                 break;
             } 
        }
        i++;
    }
     return 0;
}

三、大小写转换函数

与isupper()和islower()函数只是测试字符的值并返回真或假不同,toupper()和tolower()把它们参数转换成不同的大小写状态并返回。toupper()返回参数的大写形式。tolower()返回参数的小写形式。

if(toupper(userinput)==’Y’)
printf(“yes!\n”)
else
printf(“No!\n”)

举例:

#include 
#include 
#include 
#include 
int main(void)
{   char name[25],nameNew[25];
    char ans;
    int i;
    printf("What is your name?");
    gets(name);
 
    printf("Are you sure that %s is your name(y/n)",name);
    ans = getchar();
 
    if(toupper(ans)=='Y')
    {
        for(i=0;i<= strlen(name);i++)
        { nameNew[i]=toupper(name[i]);}
        printf("Your name is uppercase letters is %s.\n",nameNew);
    }
 
    return 0;
}

代码分析:

这段代码首先要求用户输入他的名字。名字是用gets()函数输入。用户可以输入名和姓Mssq字符串函数,因为用的是gets()函数,而不是scanf()函数。如果用户核实名字输入正确,for语句把名字中的每个字符都转换成大写字母。for循环逐个访问数组的元素,把每个字符发送toupper()函数并把大写字母存储在名为nameNew的数组中。

(编辑:晋中站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!