为什么打印不出来结果?

调用函数的时候出问题了,结果打印不出来,有没有小伙伴可以帮忙看一下

img

img

```

```#include<stdio.h>
typedef char DataType;
#define MAXNUM 20
#define ERROR 0
#define OK 1
#define FALSE 0
#define TRUE 1
typedef struct
{
DataType data[MAXNUM];
int len;
}SString;
void SStringCreate(SStrings)
{
int i,j;
char c;
printf("请输入要建立的串的长度:");
scanf("%d",&j);
for(i=0;i<j;i++)
{
printf("请输入串的第%d个字符:",i+1);
fflush(stdin);
scanf("%c",&c);
s->data[i]=c;
}
s->data[i]='\0';
s->len=j;
}
void SStringPrint(SString
s)
{
int i;
for(i=0;ilen;i++)
printf("%c",s->data[i]);
printf("\n");
}
int SStringIsEmpty(SStrings)
{
if(s->len==0)
return TRUE;
else
return FALSE;
}
int SStringLength(SString
s)
{
return(s->len);
}
int SStringInsert(SString*s,int pos,SString T)
{
int i;
if(pos<0||pos>s->len+1)
return FALSE;
if(s->len+T.len<MAXNUM)
{
for(i=s->len+T.len+1;i>T.len+pos;i--)
s->data[i]=s->data[i-T.len-1];
for(i=0;i<=T.len;i++)
s->data[i+pos]=T.data[i];
s->len=s->len+T.len+1;
}
else
if(pos+T.len<MAXNUM)
{
for(i=MAXNUM-1;i>T.len+pos;i--)
s->data[i]=s->data[i-T.len-1];
for(i=0;i<=T.len;i++)
s->data[i+pos]=T.data[i];
s->len=MAXNUM;
}
else
{
for(i=0;i<MAXNUM-pos;i++)
s->data[i+pos]=T.data[i];
s->len=MAXNUM;
}
return TRUE;
}

int SStringDelete(SStrings,int pos,int len)
{
int i;
if(pos<0||pos>(s->len-len))
return ERROR;
for(i=pos+len;ilen;i++)
s->data[i-len]=s->data[i];
s->len=s->len-len;
return OK;
}
int SStringComp(SString
s,SStringT)
{
int i;
for(i=0;ilen&&i<=T->len;i++)
if(s->data[i]!=T->data[i])
printf("相等");
return(s->data[i]-T->data[i]);
printf("不相等");
return(s->len-T->len);
}
int SStringCat(SString
s,SString T)
{
int i,flag;
if(s->len+T.len<MAXNUM)
{
for(i=s->len;i<=s->len+T.len;i++)
s->data[i+1]=T.data[i-s->len];
s->len=s->len+T.len+1;
flag=1;
}
else
if(s->len<MAXNUM)
{
for(i=s->len;i<MAXNUM;i++)
s->data[i+1]=T.data[i-s->len];
s->len=MAXNUM;
flag=0;
}
else
flag=0;
return(flag);
}
int main(int argc,char*argv[])
{
SString s;
int choice,begin,end;
char str[10];
printf("\t请选择操作(1-5):\n");
printf("\t1、建立串\n");
printf("\t2、输出串\n");
printf("\t3、求串长度\n");
printf("\t4、删除部分字符串\n");
printf("\t5、插入部分字符串\n");
printf("\t6、连接串\n");
printf("\t7、比较串\n");
printf("\t8、退出\n");
while(TRUE)
{
printf("\t请重新选择操作(1-5):\n");
scanf("%d",&choice);
switch(choice)
{
case 1:
SStringCreate(&s);
break;
case 2:
SStringPrint(&s);
break;
case 3:
printf("串的长度是:");
printf("%d\n",SStringLength(&s));
break;
case 4:
printf("请输入删除字符串的起始位置:");
scanf("%d",&begin);
printf("请输入删除字符串的长度:");
scanf("%d",&end);
SStringDelete(&s,begin,end);
printf("新串为:");
SStringPrint(&s);
break;
case 5:
printf("请输入插入字符串的起始位置:");
scanf("%d",&begin);
printf("请输入插入的字符串:");
scanf("%s",&str);
SStringInsert(&s,begin,str);
printf("新串为:");
SStringPrint(&s);
break;
case 6:
printf("请输入要连接的字符串:");
scanf("%s",&str);
SStringCat(&s,&str);
printf("新串为:");
SStringPrint(&s);
break;
case 7:
print("请输入要比较的串:");
scanf("%s",&str);
SStringComp(&s,&str);
break;
case 8:
return 0;
}
}
return 0;
}

哪打印不出来,调用哪个函数了