C中查找一个字符串的特定数据
发布网友
发布时间:2022-07-14 19:07
我来回答
共3个回答
热心网友
时间:2023-10-03 06:15
#include <stdio.h>
#include <string.h>
void main()
{
int i=0,j,lena,lenb,lenc;
char a[100]="hello china,right error!",b[10]="error", *ptr;
ptr=strstr(a,b);
if(ptr)
{
lena=strlen(a);
lenb=strlen(b);
lenc=strlen(ptr);
if(lena>lenc) /* 前面有字符 */
{
j=lena-lenc-1;
if((a[j]>='0' && a[j]<='9') || (a[j]>='a' && a[j]<='z') || (a[j]>='a' && a[j]<='z'))
i=1;
}
if(lenc>lenb) /* 后面有字符 */
{
j=lena-lenc+lenb;
if((a[j]>='0' && a[j]<='9') || (a[j]>='a' && a[j]<='z') || (a[j]>='a' && a[j]<='z'))
i=1;
}
if(i==0)
puts("YES");
else puts("NO");
}
else puts("NO");
}
热心网友
时间:2023-10-03 06:15
#include <stdio.h>
#include <string.h>
void main()
{
int i=0,j,lena,lenb,lenc;
char a[100]="hello china,right error!",b[10]="error", *ptr;
ptr=strstr(a,b);
if(ptr)
{
lena=strlen(a);
lenb=strlen(b);
lenc=strlen(ptr);
if(lena>lenc) /* 前面有字符 */
{
j=lena-lenc-1;
if((a[j]>='0' && a[j]<='9') || (a[j]>='a' && a[j]<='z') || (a[j]>='a' && a[j]<='z'))
i=1;
}
if(lenc>lenb) /* 后面有字符 */
{
j=lena-lenc+lenb;
if((a[j]>='0' && a[j]<='9') || (a[j]>='a' && a[j]<='z') || (a[j]>='a' && a[j]<='z'))
i=1;
}
if(i==0)
puts("YES");
else puts("NO");
}
else puts("NO");
}
热心网友
时间:2023-10-03 06:16
string isYesNo="";
foreach(string str in a){
if(str.Contains("error")){
isYesNo="YES"
}else{
isYesNo="NO";
}
}
热心网友
时间:2023-10-03 06:16
string isYesNo="";
foreach(string str in a){
if(str.Contains("error")){
isYesNo="YES"
}else{
isYesNo="NO";
}
}
热心网友
时间:2023-10-03 06:16
#include<stdio.h>
#include<string.h>
#include<conio.h>
int f(char *a,char *b,int m,int n)
{if(m+n>strlen(a))
return 0;
int i;char p[100];
for(i=0;i<m;i++)
p[i]=a[i];
p[i]=0;
strcat(p,b);
for(i=0;i<m+n;i++)
if(p[i]!=a[i])
break;
if(i>=m+n)
return 1;
else return f(a,b,m+1,n);
}
main()
{char a[]="hello china,right error!",b[]="error";
if(f(a,b,0,strlen(b)))
puts("yes");
else puts("no");
getch();
}追问你这个只能判断有error这个词,如果是errorskldj,或则11eweerror也会显示YES
追答char a[100],b[100];
gets(a);
gets(b);
不就结了
热心网友
时间:2023-10-03 06:16
#include<stdio.h>
#include<string.h>
#include<conio.h>
int f(char *a,char *b,int m,int n)
{if(m+n>strlen(a))
return 0;
int i;char p[100];
for(i=0;i<m;i++)
p[i]=a[i];
p[i]=0;
strcat(p,b);
for(i=0;i<m+n;i++)
if(p[i]!=a[i])
break;
if(i>=m+n)
return 1;
else return f(a,b,m+1,n);
}
main()
{char a[]="hello china,right error!",b[]="error";
if(f(a,b,0,strlen(b)))
puts("yes");
else puts("no");
getch();
}追问你这个只能判断有error这个词,如果是errorskldj,或则11eweerror也会显示YES
追答char a[100],b[100];
gets(a);
gets(b);
不就结了