输入一个字符串,同时输入帧头和帧尾(可以是多个字符),将该字符串中合法的帧识别出来.
提示:帧头和帧尾分别是head和tail 字符串”asdheadhauboisoktail”中headhauboisoktail是合法帧
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main()
{
char a[100];
char b[10];
char c[10];
char *str = a;
char *head = b;
char *tail = c;
int flag = 0;
int mask = 0;
int x,y,z;
int i;
printf("please input a character string:\n");
scanf("%s",a);
printf("please input head:\n");
scanf("%s",b);
printf("please input tail:\n");
scanf("%s",c);
x = strlen(a);
y = strlen(b);
z = strlen(c);
if(x < y || x < z)
{
printf("输入的字符串不合法!\n");
exit (0);
}
while(*head && *str)
{
str++;
if(*str == *head)
{
flag++;
head++;
}
else
{
flag = 0;
head = b;
}
if(flag == y)
{
mask = y;
flag = 0;
while(*tai
C语言基础编程之识别合法帧
最新推荐文章于 2024-05-04 15:01:52 发布
该博客介绍了一种使用C语言检测字符串中是否存在指定帧头和帧尾的合法帧的方法。通过输入字符串、帧头和帧尾,程序会检查并打印出合法的帧。如果输入的字符串长度小于帧头或帧尾,程序会提示输入非法。遍历过程中,当找到匹配的帧头,会继续寻找帧尾,成功匹配后输出合法帧。
摘要由CSDN通过智能技术生成