第1关:求子串
任务描述
本关任务:实现字符串的求子串操作。
相关知识
为了完成本关任务,你需要理解:1. 求子串操作,2.字符串的顺序存储。
求子串操作
从一个字符串S的某个位置开始截取若干个连续字符,构成一个新串T。我们将S称为主串,T称为子串。这一过程称为字符串的求子串操作。
例如:已知一个字符串是“abcdefgh”,从该串的第3个字符开始截取4个连续字符,构成的子串是“cdef”。
字符串的顺序存储
#define MAXSTRLEN 255 // 串的最大长度
typedef char SString[MAXSTRLEN+1]; // 0号单元存放串的长度, 用’\0’作结束符
编程要求
在右侧编辑器中补充代码,完成SubStr函数,以实现串的求子串操作。具体要求如下:
- SubStr: 从串s的第i个字符开始截取长度为len的子串存入串t中。其中1≦i≦串s的长度, 0≦len≦ 串s的长度-i+1。
测试说明
平台会对你编写的代码进行测试,测试文件为step1/Main.cpp,可在右侧文件夹中进行查看。
输入输出格式:
输入格式:
第一行输入一个字符串
第二行输入截取的位置i和截取字符的个数len
输出格式:
若i和len超出取值范围,则输出error;否则输出子串,末尾换行。
测试输入:
abcdefgh
3 4
预期输出:
cdef
测试输入:
abcdefgh
3 8