首页后端开发其他后端知识instr函数c语言 c语言insert

instr函数c语言 c语言insert

时间2023-04-18 02:09:02发布访客分类其他后端知识浏览1136
导读:c语言编程问题,请高手解答!! #include stdio.h//转小写char tolower( char c { if( c ='A' c='Z' return c-'A'+'a';}//大小写敏感bool findstr( ch...

c语言编程问题,请高手解答!!

#include stdio.h

//转小写

char tolower( char c)

{

if( c ='A' c='Z')

return c-'A'+'a';

}

//大小写敏感

bool findstr( char * instr, char * findstr)

{

char *s = instr;

char *t ;

while(1)

{

t = findstr;

while( *s != *t  *s != '\0')

s++;

if( *s == '\0')

return false;

while( *t == *s  *t != '\0'  *s !='\0')

s++,t++;

if(*t == '\0')

return true;

}

}

//大小写不敏感

bool findstr_i( char * instr, char * findstr)

{

char *s = instr;

char *t ;

while(1)

{

t = findstr;

while( tolower(*s) != tolower(*t)  *s != '\0')

s++;

if( *s == '\0')

return false;

while( tolower(*s) == tolower(*t)  *t != '\0'  *s !='\0')

s++,t++;

if(*t == '\0')

return true;

}

}

//主函数

int main()

{

char str[100];

char tarstr[100];

int  count;

int  flag;

int  i;

scanf("%s",str);

scanf("%d",flag);

scanf("%d",count);

for( i = 0; i count; i++)

{

scanf("%s",tarstr);

if( 1 == flag  findstr( tarstr, str))

printf("%s\n",tarstr);

if( 0 == flag  findstr_i( tarstr, str))

printf("%s\n",tarstr);

}

::fflush(stdin);

getchar();

return 0;

}

c语言程序改错

//程序D19.c的功能是将inBuf中字符串拆分成一个个的单词。

//程序说明:

//(1)单词之间的分隔符由串divChar,程序中定义为“;  ? !, . / \”。

//(2)函数getStrFromBuf的功能是从Buf的开始处寻找第一个单词,将找到的单词作为一个字符串复制到Str处,divStr指明单词间的分隔符。GetStrFromBuf的返回值指向已找到单词的下一个字符。

//(3)函数charInStr的功能是判断字符t是否出现在串Str中。

//(4)主程序的功能是将inBuf中的所有单词在屏幕上显示出来。

#includestdio.h

#define Yes 1

#define No  0

char *getStrFromBuf(char *Buf, char *Str, char *divStr);

int charInStr(char *Str, char t);

int main(void)

{

char inBuf[100] = "how old are/ you?", *point, oneWord[20];

char divChar[] = " ; ?!,./\\";

point = inBuf;

while (*point)

{

/*********Found************/

point=getStrFromBuf(point, oneWord, divChar);

if (*oneWord)

{

puts(oneWord);

}

}

return 0;

}

int charInStr(char *Str, char t)

{

for (;  *Str;  Str++)

{

/*********Found************/

if (*Str == t)

{

/*********Found************/

return Yes;

}

}

/*********Found************/

return No;

}

char *getStrFromBuf(char *Buf, char *Str,const char *divStr)

{

for (;  *Buf;  Buf++)

{

if (charInStr(divStr, *Buf) == No)

{

break;

}

}

for (;  *Buf;  Buf++)

{

if (charInStr(divStr, *Buf) == Yes)

{

break;

}

/*********Found************/

*Str = *Buf;

Str++;

}

/*********Found************/

*Str = '\0';

/*********Found************/

return ++Buf;

}

C语言中如何实现像VB的Instr函数

unsigned int slen(const char *a)

{

unsigned int i=0;

while (a[i])

++i;

return i;

}

int Instr(const char *a,const char *b)

{

int j,i,lena=slen(a),lenb=slen(b);

if (lenalenb) return 0;

for (i = 0; i=lena-lenb; i++) {

for (j=0; jlenb; j++) {

if (b[j]!=a[i+j]) break;

}

if (j=lenb) {

return i;

}

}

return -1;

}

C语言中是否有类似VB 中Instr()函数

当然有:

#include string.h

char *strstr(const char *haystack, const char *needle);

Return

It returns a pointer into the string haystack that is the first character of

the substring, or a null pointer if no match was found. If needle is an empty

string, the function returns haystack.

Description

This is like strchr() , except that it searches haystack for a substring

needle rather than just a single character.

顺便,如果你自己写不出这样的函数,不建议你继续学习C。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: instr函数c语言 c语言insert
本文地址: https://pptw.com/jishu/3603.html
c语言函数栈详解 c语言的栈 c语言函数调用参数传递 c语言调用函数实参

游客 回复需填写必要信息