《指定位置输出字符串》解题报告
指定位置输出字符串
1.题目:
2.流程图:
3.核心代码:
int i, index = -1;
char* p;
for (i = 0; s[i] != '\0'; i++) {//通过循环找出数组s[]中第一个与ch1相同的元素
if (ch1 == s[i]) {//若找到所求元素
index = i;
break;
}
}
p = &s[i];
if (index != -1) {
for (i = index; s[i] != '\0'; i++) {
printf("%c", s[i]);//打印字符
if (s[i] == ch2)//若遇到与ch2相同的字符,停止打印
break;
}
printf("\n");
p = s + index;
}
else {
printf("\n");
}
return p;
4.难点:
- 不能理清字符串下标代表的字符,导致数组越界或打印错误;
- 需预先设置一个指向所需返回元素地址的指针;
- 下标index需初始化为-1;
- 未规定ch1与ch2是否存在,需自行考虑特殊情况。