数据结构

1.输入输出字符串和长度

2.字符串的复制

3.字符串的粘贴

4.字符串的拼接

#include<stdio.h> 
#define maxSize 256
typedef struct{
 char ch[maxSize+1];
 int n=0;
}SeqString;
void scanf(SeqString&s){
     for(int i=0;i<maxSize;i++){
      printf("请输入字符串内容:(输入0结束)
");
      scanf("%s",&s.ch[i]);
      if(s.ch[i]=='0'){
           break;  
      }  s.n++;    
  }
      printf("字符串长度为:%d
",s.n);
 }
void printHString(SeqString &s){
     printf("S的字符串为:
");
     for(int i=0;i<s.n;i++){
          if(s.ch[i]=='
') break;
          else printf("%c",s.ch[i]);
 }printf("
");
}

void Strcopy(SeqString&s,SeqString&t){
     printf("T复制后的字符串:
");
     for(int i=0;i<s.n;i++){
          t.ch[i]=s.ch[i];
 }
     for(int i=0;i<s.n;i++){
          if(t.ch[i]=='') break;
          else
              printf("%c",t.ch[i]);
 }
}
void matching(char a[12],char b[6]){
    int i=0;
    int j=0;
    int w=1;
    while(i<11&&j<5){
        if(a[i]==b[j]){
            i++;
            j++;
            
        }else{
            i++;
            j=0;
            w++;
        }
}printf("
第%d个数才匹配成功

",w);
}

void copy(char c[7],char d[5]){
    printf("将c与d拼接在一起:
");
    int e[maxSize];
    for(int i=0;i<7;i++){
        e[i]=c[i];
    }
    for(int j=0;j<5;j++){
        e[j+6]=d[j];
    }
    for(int i=0;i<12;i++){
        printf("%c",e[i]);
}
}
int  main(){
 char a[12]="Hello World";
 char b[6]="World";
 char c[7]="I Love";
 char d[5]=" You"; 
 char e[maxSize];
 SeqString s;
 SeqString t;
 scanf(s);
 printHString(s);
 Strcopy(s,t);
 matching(a,b);
 copy(c,d);
}
原文地址:https://www.cnblogs.com/LYY1084702511/p/10865265.html