C语言中字符数组的常用函数有以下几个:

strlen(str):返回字符串str的长度;
strcpy(str1,str2):将字符串str2复制到字符串str1中,并返回字符串str1;
strchr(str,ch):返回在字符串str中第一次出现指定的字符ch的地址;
strcat(str1,str2):将字符串str2连接到字符串str1的尾部,并返回连接后的字符串str1;
strcmp(str1,str2):比较两个字符串str1和str2,若str1大于(等于、小于)str2,则返回大于(等于、小于)0的数;
strstr(str1,str2):在字符串str1中查找指定的字符串str2第一次出现的位置,并返回地址值;
函数的实现:
1.strlen(str)

#include <stdio.h>
#include <string.h>
#define N 100void main()
{int i = 0;char str[N];printf("input a str:");/*//字符串的输入 fgets(str,6,stdin);gets(str);for(i = 0;i < 5;i++)scanf("%s",str);i = strlen(str);        //使用strlen();
*/while( str[i] != '\0')    //自定义实现{i++;}    printf("%d\n",i);}

2.strcpy(str1,str2)

#include <stdio.h>
#include <string.h>
#define N 100void main()
{int i = 0;int j = 0;char str1[N] = {0};char str2[N] = {0};printf("input a str1:");gets(str1);printf("input a str2:");gets(str2);//   strcpy(str1,str2);        //strcpy();while(str2[i] != '\0')    //自定义实现strcpy();{str1[i] = str2[i];i++;}puts(str1);
}

3.strchr(str,ch)

#include <stdio.h>
#include <string.h>
#define N 100void main()
{int i = 0;char ch;char str[N];printf("input a str:");gets(str);printf("input a char:");ch =  getchar();//    printf("%d\n",strchr(str,ch));    //打印地址
//    printf("%s\n",strchr(str,ch));    //打印ch及后面的字符while(str[i] != '\0')            //自定义实现strchr();{if(str[i] == ch)break;i++;}printf("%d\n",i);
}

4.strcat(str1,str2)

#include <stdio.h>
#include <string.h>
#define N 100void main()
{int i = 0;int j = 0;char str1[N] = {0};char str2[N] = {0};printf("input a str1:");gets(str1);printf("input a str2:");gets(str2);strcat(str1,str2);        //strcat();/*    while(str1[i] != '\0')    //自定义实现strcat();i++;while(str2[j] != '\0'){str1[i+j] = str2[j];j++;}*/  puts(str1);}

5.strcmp(str1,str2)

#include <stdio.h>
#include <string.h>
#define N 100void main()
{int i = 0;int j = 0;char str1[N] = {0};char str2[N] = {0};printf("input a str1:");gets(str1);printf("input a str2:");gets(str2);//   j = strcmp(str1,str2);            //strcmp();//   printf("%d\n",j);while((str1[i] == str2[i]) && (str1[i] != '\0'))//自定义实现strcmp();打印不同字符的差值i++;printf("%d\n",str1[i] - str2[i]);}

6.strstr(str1,str2)

#include <stdio.h>
#include <string.h>
#define N 100void main()
{int i = 0;int j = 0;int k = 0;char str1[N] = {0};char str2[N] = {0};printf("input a str1:");gets(str1);printf("input a str2:");gets(str2);//  j =  strstr(str1,str2);    //strstr();//   printf("%d\n",j);while(str1[i] != '\0')      //自定义实现strstr();打印查找到的地址值,若没有查到,则返回0{if(str1[i] != str2[j])i++;if(str1[i] == str2[j]){i++;j++;if(str2[j] == '\0'){k = 0;break;}if(str1[i] != str2[j]){k = 1;}}}if(k == 1)printf("%d\n",0);else if(k == 0)printf("%d\n",i-j+1);}

初学C语言,以上代码若有错误,请指正!谢谢!!!

C语言字符数组常用函数实现相关推荐

  1. C语言文件读写常用函数总结

    C语言文件读写常用函数总结 有点小头疼这几天复习,可是总是有些小可爱问有关C语言文件方面的内容,在此写篇博文一劳永逸. 目录 C语言文件读写常用函数总结 fopen函数 fclose函数 fseek函 ...

  2. php学习笔记-php数组的创建和使用,数组常用函数-day03

    php数组的创建和使用,数组常用函数 数组的概念 一维数组的创建和使用 1.直接将变量声明为数组元素 2.通过array()函数来创建一维数组 3.数组的元素值的访问 4.数组元素的赋值方式 5.数组 ...

  3. C语言 字符数组 和 字符串 详解

    C语言 字符数组 和 字符串 详解 用来存放字符的数组称为字符数组,例如: char a[10]; //一维字符数组 char b[5][10]; //二维字符数组 char c[20]={'c', ...

  4. C语言 | 字符数组

    C语言字符数组的定义 字符数组是用来存放字符数据的数组,字符数组中的一个元素存放一个字符,定义字符数组的方法和定义数值型数组的方法类似. //例子:char character[10]; C语言字符数 ...

  5. C/C++ | C语言字符数组初始化,有些赋值方式千万注意

    一.字符数组的定义和初始化 字符数组的初始化,最容易理解的方式就是逐个字符赋给数组中各元素. charstr[10]={'I','','a','m','','h','a','p','p','y'}; ...

  6. python定义字符串数组初始化_字符数组及其定义和初始化,C语言字符数组详解...

    字符数组及其定义和初始化,C语言字符数组详解 字符串的存储方式有字符数组和字符指针,我们先来看看字符数组. 因为字符串是由多个字符组成的序列,所以要想存储一个字符串,可以先把它拆成一个个字符,然后分别 ...

  7. php 数组合并_PHP数组常用函数分类整理

    微信公众号:PHP在线 PHP数组常用函数分类整理 一.数组操作的基本函数 数组的键名和值array_values($arr); 获得数组的值array_keys($arr); 获得数组的键名arra ...

  8. 用字符数组作函数参数编程实现如下功能:在字符串中删除与某字符相同的字符。

    用字符数组作函数参数编程实现如下功能:在字符串中删除与某字符相同的字符. **提示信息: "Input a string:" "Input a character:&qu ...

  9. C语言字符数组越界问题

    C语言字符数组踩坑 如果运行下面的代码会发生输出什么? #include<stdio.h> #include<string.h>/*** 输出结果* a1:wohello* a ...

最新文章

  1. 用计算机计算线性卷积的基本规则,实验三_线性卷积与圆周卷积的计算.doc
  2. 山西出台法规规范社会力量认养文物 系全国首例
  3. hdu 1280用hash解决。。
  4. PING检查网络是否畅通
  5. intel服务器修复两个漏洞,英特尔处理器漏洞怎么修复 Intelcpu漏洞修复方法
  6. CCF201703-4 地铁修建(100分)【Kruskal算法+二分+最短路】
  7. dstwo linux 模拟器,dstwo gba 模拟器-TempGBA下载V1.44 最新版-西西游戏下载
  8. CSF 格式文件播放器 下载地址
  9. duilib加载资源
  10. 细数Android原生工程接入EasyAR-SurfaceTracking遇到的坑
  11. Axure实战002:APP原型设计思路
  12. java微信获取临时素材_java实现微信获取/下载临时素材
  13. 01 数据库和MySQL简介
  14. WPF自定义日期时间控件
  15. 2022-03-02每日刷题打卡
  16. 成为一流软件开发者的 34 条建议
  17. 我的安卓手机上的垃圾文件清理记录
  18. UG NX 12 拟合曲面
  19. 怎么录屏幕视频,不要错过这4种简单的电脑录屏方法
  20. CodeSoft官方Demo

热门文章

  1. 前端dashboard框架_后台管理系统,前端框架用什么最好?
  2. 云安全 | 云原生应用程序保护平台 CNAPP
  3. java中generics的作用,java中泛型(Generics)的一些理解
  4. 沈晓杰:必须清算给公众造成巨大损失上书者
  5. 2012年数学二真题手稿解析
  6. android 设置繁体环境,Android更改中文和繁体中文的区域设置无法正常工作
  7. TCP-IP详解:Nagle算法
  8. 微信小程序webview、渲染富文本
  9. 特斯拉上海工厂整体工程建设基本完成 将于年底投产
  10. Windows服务简单开发