6-3 求左子串* (20 分)
请编写函数,求左子串。
函数原型
char* StrLeft(char *dst, const char *src, int len);
说明:函数取源串 src 的前 len 个字符,保存到目的串 dst 中,函数值为 dst。若 len 值不正确,则自动修正。
裁判程序
#include char* StrLeft(char *dst, const char *src, int len);int main(){ char a[1024], b[1024]; int n; gets(a); scanf("%d", &n); StrLeft(b, a, n); puts(b); return 0;}/* 你提交的代码将被嵌在这里 */
输入样例1
abcd2
输出样例1
ab
输入样例2
abcd10
注:10 不正确,按 4 处理。
输出样例2
abcd
输入样例3
abcd-5
注:-5 不正确,按 0 处理。
输出样例3
注:输出为空串。
相关习题:求右子串、求子串。
char* StrLeft(char *dst, const char *src, int len){ int l=strlen(src);//获取源字符串的长度 if(len<l&&len>=1){//len小于源字符串的长度&&len大于等于1 int i; for(i=0;i<len;i++){ dst[i]=src[i]; } dst[i]='\0'; }else if(len>=l){//len大于源字符串的长度 int i; for(i=0;i<l;i++){ dst[i]=src[i]; } dst[i]='\0'; }else{//len值为负数情况dst[0]='\0'; } return dst; }