C语言文字串问题
发布网友
发布时间:2022-06-02 08:28
我来回答
共2个回答
热心网友
时间:2023-10-13 02:48
#include <stdio.h>
int main()
{
char str[] = "abcdefg";
char start, end;
printf("请输入开始字符");
scanf("%c", &start);
printf("请输入结束字符");
scanf("%c", &end);
int i = 0;
int flag = 0;
while (str[i])
{
if (str[i] == start)flag = 1;
if (str[i] == end)flag = 0;
if (flag == 1)printf("%c", str[i]);
i++;
}
return 0;
}
追问想请问下如果最开始的是d最后是b,要做到输出defgab,该怎么做呢?
追答在获得开始信号之后加while循环
热心网友
时间:2023-10-13 02:49
#include<stdio.h>
void main() { char str[]={ "abcdefg" },*p,str1[20],a,b;
printf("%s\n",str);
printf("开始文字:"); scanf("%s",str1); a=str1[0];
printf("结束文字:"); scanf("%s",str1); b=str1[0];
p=str;
while ( *p!=0 && *p!=a ) p++;
while ( *p!=0 ) { printf("%c",*p); if ( *p==b ) break; else p++; }
printf("\n");
}
追问不好意思,没写好,只能声明一个字符串。
追答#include<stdio.h>
void main() { char str[40]={ "abcdefg" },*p,a,b;
printf("%s\n",str);
printf("开始文字:"); scanf("%s",str+30); a=str[30];
printf("结束文字:"); scanf("%s",str+30); b=str[30];
p=str;
while ( *p!=0 && *p!=a ) p++;
while ( *p!=0 ) { printf("%c",*p); if ( *p==b ) break; else p++; }
printf("\n");
}