广告
返回顶部
首页 > 资讯 > 后端开发 > 其他教程 >C语言中的字符串操作方法有哪些
  • 271
分享到

C语言中的字符串操作方法有哪些

2023-06-29 17:06:31 271人浏览 泡泡鱼
摘要

本文小编为大家详细介绍“C语言中的字符串操作方法有哪些”,内容详细,步骤清晰,细节处理妥当,希望这篇“C语言中的字符串操作方法有哪些”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。字符串在C语言里使用非常多,因为很

本文小编为大家详细介绍“C语言中的字符串操作方法有哪些”,内容详细,步骤清晰,细节处理妥当,希望这篇“C语言中的字符串操作方法有哪些”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。

C语言中的字符串操作方法有哪些

字符串在C语言里使用非常多,因为很多数据处理都是文本,也就是字符串,特别是设备交互、WEB网页交互返回的几乎都是文本数据。

字符串本身属于字符数组、只不过和字符数组区别是,字符串结尾有’\0’。 字符串因为规定结尾有'\0',在计算长度、拷贝、查找、拼接操作都很方便。

1. 字符串的定义

char buff[]="我是一个字符串";char a[]="1234567890";char b[]="abc";char c[]={'a','b','c','\0'};

在普通的字符数组结尾加一个 \0 就变成了字符串。

2. 处理字符串里字母大小写

将字符串里所有大写字母全部换成小写字母。或者小写字母全部换成大写字母。可以通过形参进行区分。

#include <stdio.h>#include <string.h>#include <stdlib.h>void func(char *str,int flag);int main(){    char buff[100];    printf("从键盘上输入字符串:");    scanf("%s",buff);    printf("源字符串:%s\n",buff);    func(buff,0);    printf("大写转换小写:%s\n",buff);    func(buff,1);    printf("小写转大写:%s\n",buff);    return 0;}//函数功能: 大写小写转换//flag=0表示大写转换小写  =1表示小写转大写void func(char *str,int flag){    int data;    while(*str!='\0')    {        if(flag)        {            if(*str>='a'&& *str<='z') //小写            {                *str=*str-32;            }        }        else        {            if(*str>='A'&& *str<='Z') //小写            {                *str=*str+32;            }        }        str++;    }}

3. 从键盘上录入2个字符串,判断是否相等

#include <stdio.h>int main(){    char str1[100];    char str2[100];    int i=0;        printf("输入字符串1:");    scanf("%s",str1);    printf("输入字符串2:");    scanf("%s",str2);        while(str1[i]!='\0'||str2[i]!='\0')    {        if(str1[i]!=str2[i])break;        i++;    }    if(str1[i]=='\0'&&str2[i]=='\0')    {        printf("字符串相等.\n");    }    else    {        printf("字符串不相等.\n");    }    return 0;}

4. 从键盘上录入一个字符串,按照小到大的顺序排序

#include <stdio.h>#include <string.h>int main(){    char str1[100];    int len=0;    int i,j;    int tmp;    printf("输入要排序的字符串:");    scanf("%s",str1);    len=strlen(str1);    //开始排序    for(i=0;i<len-1;i++)    {        for(j=0;j<len-1-i;j++)        {            if(str1[j]>str1[j+1])            {                tmp=str1[j];                str1[j]=str1[j+1];                str1[j+1]=tmp;            }        }    }    printf("排序之后的字符串:%s\n",str1);    return 0;}

5. 从键盘上输入一个字符串,转为整数输出

#include <stdio.h>#include <string.h>int main(){    //"123"    char str[100];    int data=0;    int i=0;    printf("从键盘上输入字符串:");    scanf("%s",str);    while(str[i]!='\0')    {        data*=10;//data=0 data=10 data=120        data+=str[i]-'0';//data=1 data=12 data=123        i++;    }    printf("data=%d\n",data);    return 0;}

6. 字符串删除

从键盘上录入一个字符串,删除字符串里指定的单词,输出结果。

比如:原字符串 ”akjbcds123Dfjvbf123fdvbfd123”

删除单词:“123”

输出的结果:”akjbcdsdfjvbffdvbfd”

#include <stdio.h>#include <string.h>int main(){    char str1[100];    char str2[100];    int i=0,j=0;    int str2_len=0;        printf("输入源字符串:");    scanf("%s",str1);    printf("输入要删除的字符串:");    scanf("%s",str2);        str2_len=strlen(str2);                        for(i=0;str1[i]!='\0';i++)    {        //比较字符串        for(j=0;str2[j]!='\0';j++)        {            if(str1[i+j]!=str2[j])break;        }        if(str2[j]=='\0')        {            //4. 删除字符串---后面向前面覆盖            for(j=i;str1[j]!='\0';j++)            {                str1[j]=str1[j+str2_len];            }            str1[j]='\0';            i--;        }    }    //5. 输出结果    printf("str1=%s\n",str1);    return 0;}

7. 字符串插入

从键盘上录入一个字符串,从指定位置插入一个字符串,再输出结果。

比如:原字符串“1234567890”

(1). 从指定位置插入新的单词。 比如 从第2个下标插入一个“ABC”字符串。

结果: “123ABC4567890”

#include <stdio.h>#include <string.h>int main(){    char str1[100];    char str2[100];    int addr=0;    int str1_len;    int str2_len;    int i;        printf("录入源字符串:");    scanf("%s",str1);    printf("录入要插入的字符串:");    scanf("%s",str2);    printf("输入要插入的下标位置:");    scanf("%d",&addr);    str1_len=strlen(str1); //3    str2_len=strlen(str2); //2            //完成数据移动    for(i=str1_len-1;i>=addr;i--)    {        str1[i+str2_len]=str1[i];    }    //数据替换    for(i=0;i<str2_len;i++)    {        str1[i+addr]=str2[i];    }    str1[str1_len+str2_len]='\0';        printf("str1=%s\n",str1);    return 0;}

8. 字符串替换

从键盘上录入一个字符串,将指定单词替换成想要的单词。

比如:原字符串“123jfvfdj123dkfvbfdvdf”

想要将“123”替换成“888”或者“8888”或者“88”

#include <stdio.h>#include <string.h>int main(){    char str1[100];    char str2[100];    char str3[100];    int str1_len=0;    int str2_len=0;    int str3_len=0;    int i,j;    int cnt=0;        printf("输入源字符串:");    scanf("%s",str1);    printf("输入查找的字符串:");    scanf("%s",str2);    printf("输入替换的字符串:");    scanf("%s",str3);        str1_len=strlen(str1);    str2_len=strlen(str2);    str3_len=strlen(str3);        for(i=0;i<str1_len;i++)    {        //查找字符串        for(j=0;j<str2_len;j++)        {            if(str1[i+j]!=str2[j])break;        }        //如果查找成功就进行替换        if(j==str2_len)        {            //总长度变短了            if(str2_len>str3_len)            {                cnt=str2_len-str3_len; //差值                //完成数据向前移动--覆盖                for(j=i+str2_len-cnt;j<str1_len;j++)                {                    str1[j]=str1[j+cnt];                }                str1[str1_len-cnt]='\0';            }            //总长度变长了            else if(str2_len<str3_len)            {                cnt=str3_len-str2_len; //差值                //完成数据向后移动                for(j=str1_len;j>=i+str2_len;j--)                {                    str1[j+cnt]=str1[j];                }                str1[str1_len+cnt]='\0';            }            //替换            for(j=0;j<str3_len;j++)            {                str1[i+j]=str3[j];            }            //重新计算长度            str1_len=strlen(str1);        }    }        printf("str1=%s\n",str1);    return 0;}

读到这里,这篇“C语言中的字符串操作方法有哪些”文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注编程网其他教程频道。

--结束END--

本文标题: C语言中的字符串操作方法有哪些

本文链接: https://www.lsjlt.com/news/325986.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • C语言中的字符串操作方法有哪些
    本文小编为大家详细介绍“C语言中的字符串操作方法有哪些”,内容详细,步骤清晰,细节处理妥当,希望这篇“C语言中的字符串操作方法有哪些”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。字符串在C语言里使用非常多,因为很...
    99+
    2023-06-29
  • c语言字符串处理的方法有哪些
    C语言字符串处理的方法有以下几种:1. 使用字符数组:可以通过定义一个字符数组来存储字符串,然后使用相关的字符串处理函数来对字符串进...
    99+
    2023-08-30
    c语言
  • c语言处理字符串的方法有哪些
    C语言处理字符串的方法有以下几种:1. 字符串赋值:使用strcpy函数将一个字符串赋值给另一个字符串。2. 字符串连接:使用str...
    99+
    2023-08-24
    c语言
  • c语言输入字符串的方法有哪些
    在C语言中,输入字符串的方法有以下几种:1. 使用scanf函数:可以使用%s格式说明符来读取字符串。例如:scanf("%s", ...
    99+
    2023-08-18
    c语言
  • C语言字符串替换的方法有哪些
    C语言中字符串替换的方法有以下几种:1. 使用strchr()和strncpy()函数:使用strchr()函数查找需要替换的字符在...
    99+
    2023-08-16
    C语言
  • 字符串有哪些操作方法
    小编给大家分享一下字符串有哪些操作方法,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!字符串属性和方法字符串用于表示和操作字符序列...
    99+
    2022-10-19
  • python中字符串操作方法有哪些
    这期内容当中小编将会给大家带来有关python中字符串操作方法有哪些,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。python的五大特点是什么python的五大特点:1.简单易学,开发程序时,专注的是解决...
    99+
    2023-06-14
  • php中字符串有哪些操作方法
    这篇文章主要介绍“php中字符串有哪些操作方法”,在日常操作中,相信很多人在php中字符串有哪些操作方法问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”php中字符串有哪些操作方法”的疑惑有所帮助!接下来,请跟...
    99+
    2023-06-20
  • js中操作字符串的方法有哪些
    小编给大家分享一下js中操作字符串的方法有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!var a = '世界上最远...
    99+
    2022-10-19
  • Python字符串操作方法有哪些
    本篇内容主要讲解“Python字符串操作方法有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python字符串操作方法有哪些”吧!Python字符串中字符大小写的变换: * S.l...
    99+
    2023-06-17
  • 有哪些shell字符串操作方法
    本篇内容主要讲解“有哪些shell字符串操作方法”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“有哪些shell字符串操作方法”吧!1,取得字符串长度代码如下:string=abc12342341...
    99+
    2023-06-09
  • C语言有哪些操作符
    这篇文章将为大家详细讲解有关C语言有哪些操作符,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。1.单目操作符之前有了解到的三目操作符(?:),指的是有三个操作数例如:3+5其中,+是一个操作符3是左操作数5...
    99+
    2023-06-29
  • C语言中字符串的定义方法
    本篇内容介绍了“C语言中字符串的定义方法”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成! ...
    99+
    2022-10-19
  • C/C++中关于字符串的常见函数操作方法有哪些
    本篇内容介绍了“C/C++中关于字符串的常见函数操作方法有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!wcsncpy_swcsncpy...
    99+
    2023-07-05
  • Python3中字符串的常用操作方法有哪些
    这篇文章主要介绍了Python3中字符串的常用操作方法有哪些的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Python3中字符串的常用操作方法有哪些文章都会有所收获,下面我们一...
    99+
    2022-10-19
  • C语言中字符串常用操作总结
    目录字符串的定义和初始化字符串的赋值字符串的输入输出字符串的比较字符串的拼接字符串的查找和替换字符串的常用函数strcpy函数strcat函数strlen函数strcmp函数strc...
    99+
    2023-05-20
    C语言字符串常用操作 C语言字符串操作 C语言字符串
  • C语言中操作字符串的函数详解
    目录一、函数表二、strlen实例三、strcmp实例四、strcpy实例五、stract实例六、strchr实例总结一、函数表 函数名函数功能strlensize_t strlen...
    99+
    2022-11-13
  • c语言查找字符串指定字符的方法
    小编给大家分享一下c语言查找字符串指定字符的方法,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!C语言是什么C语言是一门面向过程的、抽象化的通用程序设计语言,广泛应用于底层开发,使用C语言可以以简易的方式编译、处理低级存储器...
    99+
    2023-06-14
  • Python字符串常规操作方法有哪些
    一、前言在Python开发的过程中,为了实现某项功能,经常需要对某些字符串进行特殊的处理,如拼接字符串、截取字符串、格式化字符串等。二、拼接字符串在使用“+”运算符可完成对多个字符串的拼接,“+”运算符可以连接多个字符串并产生一个字符串对象...
    99+
    2023-05-14
    Python
  • C语言中文件操作方法有哪些
    这篇文章主要介绍了C语言中文件操作方法有哪些,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。什么是文件程序文件其实从文件的功能的角度来说:我们的文件可以分为两种类型的文件:程序...
    99+
    2023-06-25
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作