求解数据结构c语言中串的问题

已知:s1=〃I’m a student〃,s2=〃student〃,s3=〃teacher〃,试求下列各运算的结果:
Strlength(s1);
SubString(s1,8,5);
Index(s1,’u’);
Replace(s1,’stidemt’,s3);

(如果I和m之间只有一个'号,没有空格的话)

长度应该为13
SubString(s1,8,5)的结果是tuden,(意思是说从第8个字符开始,拿出5个字符)
index(s1,'u')的功能是在字符串中s1查找目的字符u,如果找到了,就返回u的位置值,没有找到就返回0。s1中有u这个字符,位置为9,所以结果为9

Replace(s1,’stidemt’,s3) 格式有问题;
replace(s,start,t,v),即要求在主串s中,从位置start,开始查找是否存在子串t,若主串s中存在子串t,则用子串v替换子串t 且函数返回1,若主串s中不存在子串t,则函数返回0.
温馨提示:内容为网友见解,仅供参考
第1个回答  2013-05-17
Strlength(s1);结果:是13,返回S1字符串的长度。
SubString(s1,8,5);结果:是"tuden",返回S1字符串从第8个字符开始后面的5个字符。
Index(s1,’u’);结果:是9,返回找到的第一个字符'u'所在的位置序号。
Replace(s1,"stidemt",s3);
可能是笔误,题目应该是这样:Replace(s1,"student",s3);结果:是"I’m a teacher",
用s3的字符串来替换s1中的字符串"student".本回答被网友采纳
相似回答