输入三个字符串,通过指针读取各个字符串的子串(子串是指字符串中连续的一小部分),把它们合并成一个新字符串
时间: 2023-05-29 17:01:22 浏览: 83
按顺序合并组成一个新的字符串
```c
#include <stdio.h>
#include <string.h>
#define MAX_LEN 100
void get_substring(char *source, int start, int end, char *dest) {
int len = strlen(source);
if (start < 0 || start >= len || end < 0 || end >= len || start > end) {
return;
}
int i, idx = 0;
for (i = start; i <= end; i++) {
dest[idx++] = source[i];
}
dest[idx] = '\0';
}
int main() {
char s1[MAX_LEN], s2[MAX_LEN], s3[MAX_LEN];
char sub1[MAX_LEN], sub2[MAX_LEN], sub3[MAX_LEN];
char new_str[3 * MAX_LEN];
printf("Enter three strings:\n");
scanf("%s %s %s", s1, s2, s3);
get_substring(s1, 2, 4, sub1);
get_substring(s2, 1, 3, sub2);
get_substring(s3, 3, 5, sub3);
strcpy(new_str, sub1);
strcat(new_str, sub2);
strcat(new_str, sub3);
printf("New string: %s\n", new_str);
return 0;
}
```
阅读全文