输入一个字符串,输出要取得子串。 输入格式: 行1:输入字符串 行2:输入子串起始位置 行3:输入子串结束位置 输出格式: 输出截取子串,如果起始或结束位置不合法,输出没子串!用c语言实现
时间: 2024-02-20 20:58:53 浏览: 84
好的,根据你的要求,我可以为你提供以下 C 语言代码:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str[100], sub[100];
int start, end, len, i, j;
printf("请输入字符串:\n");
fgets(str, sizeof(str), stdin);
printf("请输入子串的起始位置和结束位置:\n");
scanf("%d%d", &start, &end);
len = strlen(str);
if (start < 0 || start >= len || end < 0 || end >= len || start > end) {
printf("没有子串!\n");
} else {
for (i = start, j = 0; i <= end; i++, j++) {
sub[j] = str[i];
}
sub[j] = '\0';
printf("截取的子串为:%s\n", sub);
}
return 0;
}
```
这段代码首先让用户输入一个字符串,然后让用户输入起始位置和结束位置,然后根据起始位置和结束位置截取子串并输出。如果起始位置和结束位置不合法,即小于0或大于等于字符串长度或起始位置大于结束位置,就输出“没有子串!”提示。
阅读全文