字符串的实现加法,字符串的实现加减乘除

  字符串的实现加法,字符串的实现加减乘除

  永远的神干货盘点

  一、串的相关定义串:由零个或者多个字符组成的有限序列。记为S="a1a2a3.一个”(n大于等于0),其中S为串名,a1a2a3.一;一个为串值,n为串的长度。

  空串:不包含任何字符的串称为空串。例如:S=" "(双引号中没有任何东西)

  空格串:由一个或者多个空格组成的串称为空格串,注意空格串不等于空串,空格串的长度等于空格字符的个数。

  子串:串中任意连续的字符组成的子序列称为该串的子串。

  串相等:两个串相等,是指两个串的长度相等且对应的字符都相等。

  二、串的相关操作1.串的赋值

  2.求串长

  3.串的复制

  4.串的打印

  5.比较两个串

  6.求子串

  7.删除字串

  8.插入串

  三、代码实现#include str_s.h

  int StrAssign(HString T,char *chars)//生成一个其值等于串常量烧焦的T

  {

  int i,n;char * c;

  for(i=0,c=chars * cI,c);

  如果(!我)

  {

  T.ch=NULL

  t。长度=0;

  }

  其他

  {

  如果(!(t . ch=(char *)malloc(I * sizeof(char))))

  return-1;

  for(n=0;n=I-1;n)

  {

  t。ch[n]=chars[n];

  t。长度=I;

  }

  }

  返回1;

  }

  int SubString(HString Sub,HString S,int pos,int len)//求子串

  {

  int n;

  如果(位置0 位置长度 长度0 长度-位置1)

  {

  返回0;

  }

  如果(!len)

  {

  Sub.ch=NULL

  子长度=0;

  }

  其他

  {

  ch=(char *)malloc(len * sizeof(char));

  for(int n=0;n=len-1;n)

  {

  子通道[n]=子通道[位置n-1];

  }

  Sub.length=len

  }

  返回1;

  }

  int StrCompare(HString S,HString T)//若科学技术,则返回值若S=T,则返回值0;若科学技术,则返回值0

  {

  for(int I=0;I . s .长度I . t .长度;我)

  {

  if(s ch[I]!=T.ch[i])

  return s . ch[I]-t . ch[I];

  其他

  返回s .长度-t .长度;

  }

  }

  int Index(HString S,HString T,int pos)

  {

  int i=pos,j=0;

  而(即长度j . t。长度)

  {

  if(S.ch[i]==T.ch[j])

  {

  我;j;

  }

  其他

  {

  I=I-j 1;

  j=0;

  }

  }

  if(j=T.length)返回长度;

  否则返回0;

  }

  int StrLength(HString T)//求串长

  {

  返回t .长度

  }

  空字符串

  {

  int I;

  for(I=0;我。长度;我)

  {

  printf(%c ,t . ch[I]);

  }

  } #包含标准视频

  #包含马洛克

  #包含字符串。h

  #定义块大小80

  数据类型说明结构

  {

  char * ch

  (同Internationalorganizations)国际组织长度;

  } HString

  int StrAssign(HString T,char * chars);

  int SubString(HString Sub,HString S,int pos,int len);//求子串

  int StrCompare(HString S,HString T);

  int Index(HString S,HString T,int pos);

  int StrLength(HString T);

  无效字符串打印(HString T);#include str_s.h

  无效显示()

  {

  printf(请输入想选择的指令:\ n’);

  printf(1 .显示串\ n’);

  printf(2 .显示串长\ n’);

  printf(3 .两串做比较\ n’);

  printf(4 .求子串\ n’);

  printf(5 .定位\ n’);

  printf(0 .退出\ n’);

  printf(-\ n );

  }

  int main()

  {

  int n;

  show();

  scanf(%d ,n);

  char s[15]= qwertasdfzxc ;

  HString S;

  StrAssign(S,S);

  char t[5]= asdf ;

  HString T;

  StrAssign(T,T);

  HString短节;

  而(n!=0)

  {

  开关(名词)

  {

  案例1:

  printf(第一个串为:%s\n ,s . ch);

  printf(第二个串为:%s\n ,t . ch);打破;

  案例2: printf(第一条串长:%d\n ,StrLength).

  printf(第二条串长:%d\n ,StrLength(T));打破;

  案例三:int n;

  n=StrCompare(S,T);

  如果(n!=0)

  如果(北^ 0)

  printf(前面长\ n’);

  其他

  printf(后面长\ n’);

  其他

  printf(一样长\ n’);打破;

  案例4: printf(请输入你想取的位置及长度:\ t );

  int j,l;

  scanf(%d %d ,j,l);

  SubString(Sub,S,j,l);

  字符串打印(Sub);打破;

  案例五:int k;

  printf(输入查询的位置:\ n’);

  scanf(%d ,k);

  int x=Index(S,T,k);

  printf(定位到的位置为:%d ,x);打破;

  }

  printf( \ n );

  show();

  scanf(%d ,n);

  }

  返回0;

  }

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

相关文章阅读

  • office2010激活密钥大全 怎么永久激活office2010
  • project2010产品密钥免费_project2010激活密钥永久激活码
  • c语言调用退出函数 c语言退出整个程序怎么写
  • c语言中怎么给函数初始化 c语言的初始化语句
  • c语言编写函数计算平均值 c语言求平均函数
  • chatgpt是什么?为什么这么火?
  • ChatGPT为什么注册不了?OpenAI ChatGPT的账号哪里可以注册?
  • OpenAI ChatGPT怎么注册账号?ChatGPT账号注册教程
  • chatgpt什么意思,什么是ChatGPT ?
  • CAD中怎么复制图形标注尺寸不变,CAD中怎么复制图形线性不变
  • cad中怎么创建并使用脚本文件,cad怎么运行脚本
  • cad中快速计算器的功能,cad怎么快速计算
  • cad中快速修改单位的方法有哪些,cad中快速修改单位的方法是
  • cad中心点画椭圆怎么做,cad轴测图怎么画椭圆
  • CAD中常用的快捷键,cad各种快捷键的用法
  • 留言与评论(共有 条评论)
       
    验证码: