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结束)\n"); scanf("%s",&s.ch[i]); if(s.ch[i]=='0'){ break; } s.n++; } printf("字符串长度为:%d\n",s.n); } void printHString(SeqString &s){ printf("S的字符串为:\n"); for(int i=0;i<s.n;i++){ if(s.ch[i]=='\n') break; else printf("%c",s.ch[i]); }printf("\n"); } void Strcopy(SeqString&s,SeqString&t){ printf("T复制后的字符串:\n"); 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]=='\0') 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("\n第%d个数才匹配成功\n\n",w); } void copy(char c[7],char d[5]){ printf("将c与d拼接在一起:\n"); 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); }