当前位置:首页 » 编程语言 » 判断字符串字符位置c语言函数
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

判断字符串字符位置c语言函数

发布时间: 2022-09-09 02:12:01

c语言查找字符串

字符串在存储上类似字符数组,所以它每一位的单个元素都是可以提取的,如s=“abcdefghij”,则s[1]=“b”,s[9]="j",而字符串的零位正是它的长度,c语言查找字符串方法为:

1、首先,定义一个字符数组变量,可以这么写。

注意事项:

尽管形式字符串可以有任意(但有限)的长度,实际语言的字符串的长度经常被限制到一个人工极大值。有两种类型的字符串数据类型: “定长字符串”,它有固定的极大长度并且不管是否达到了这个极大值都使用同样数量的内存。

Ⅱ C语言中如何查找字符串

用strstr这个函数

包含文件:string.h
函数名: strstr
函数原型:extern char *strstr(char *str1, char *str2);
功能:找出str2字符串在str1字符串中第一次出现的位置(不包括str2的串结束符)。
返回值:返回该位置的指针,如找不到,返回空指针。

源代码:

#include<stdio.h>
#include<string.h>//调用string.h中的strstr函数
void main(){
char ch1[255]="abcde";
char ch2[100]="cd";
char* ch;//用于接受返回值
if((ch=strstr(ch1,ch2))==NULL){//说明没有要找的字符串
printf("-1\n");
}else{//说明找到了那个字符串
printf("%d\n",ch-ch1+1);//cde的地址减去abcde的地址+1
}
}

Ⅲ C语言中怎么查找字符串数组中的某个字符

程序有误,修改如下:

#include <stdio.h>

#include <string.h>

void main(){

char sh[20];

gets(sh);

for(int i=0;i<20;i++)

{

if(sh[i]='@')

{

printf("判断出有字符@ ");

break;

}

if(sh[i]='')printf("无字符@ ");

}

}

(3)判断字符串字符位置c语言函数扩展阅读:

数组的使用规则:

1.可以只给部分元素赋初值。当{ }中值的个数少于元素个数时,只给前面部分元素赋值。例如:static int a[10]={0,1,2,3,4};表示只给a[0]~a[4]5个元素赋值,而后5个元素自动赋0值。

2.只能给元素逐个赋值,不能给数组整体赋值。例如给十个元素全部赋1值,只能写为:static int a[10]={1,1,1,1,1,1,1,1,1,1};而不能写为:static int a[10]=1;请注意:在C、C#语言中是这样,但并非在所有涉及数组的地方都这样,数据库是从1开始。

3.如不给可初始化的数组赋初值,则全部元素均为0值。

4.如给全部元素赋值,则在数组说明中, 可以不给出数组元素的个数。例如:static int a[5]={1,2,3,4,5};可写为:static int a[]={1,2,3,4,5};动态赋值可以在程序执行过程中,对数组作动态赋值。这时可用循环语句配合scanf函数逐个对数组元素赋值。

网络-数组

Ⅳ c语言字符串的查找用什么函数

用strstr这个函数
包含文件:string.h
函数名: strstr
函数原型:extern char *strstr(char *str1, char *str2);
功能:找出str2字符串在str1字符串中第一次出现的位置(不包括str2的串结束符)。
返回值:返回该位置的指针,如找不到,返回空指针。

Ⅳ C语言,判断字符串2(str2)是否在str1内的那个函数怎么用请详细说下,搜了几个看不是太懂,菜鸟,谢了

#include <string.h>

char *strchr(const char *s, int c);
char *strrchr(const char *s, int c);
返回值:如果找到字符c,返回字符串s中指向字符c的指针,如果找不到就返回NULL
strchr在字符串s中从前到后查找字符c,找到字符c第一次出现的位置时就返回,返回值指向这个位置,如果找不到字符c就返回NULL。strrchr和strchr类似,但是从右向左找字符c,找到字符c第一次出现的位置就返回,函数名中间多了一个字母r可以理解为Right-to-left。

#include <string.h>

char *strstr(const char *haystack, const char *needle);
返回值:如果找到子串,返回值指向子串的开头,如果找不到就返回NULL
strstr在一个长字符串中从前到后找一个子串(Substring),找到子串第一次出现的位置就返回,返回值指向子串的开头,如果找不到就返回NULL。这两个参数名很形象,在干草堆haystack中找一根针needle,按中文的说法叫大海捞针,显然haystack是长字符串,needle是要找的子串。

楼主有兴趣可以去亚嵌的网站下一下一站式学习C编程这本书(实质是网页版)。

Ⅵ c语言如何查找字符串

C语言中的标准函数库中的strchr()函数可以实现查找字符串中的某个字符。

C语言strchr()函数:

查找某字符在字符串中首次出现的位置

头文件:#include <string.h>

strchr() 用来查找某字符在字符串中首次出现的位置,其原型为:

char * strchr (const char *str, int c);

【参数】str 为要查找的字符串,c 为要查找的字符。

strchr() 将会找出 str 字符串中第一次出现的字符 c 的地址,然后将该地址返回。

注意:字符串 str 的结束标志 NUL 也会被纳入检索范围,所以 str 的组后一个字符也可以被定位。

【返回值】如果找到指定的字符则返回该字符所在地址,否则返回 NULL。

返回的地址是字符串在内存中随机分配的地址再加上你所搜索的字符在字符串位置。设字符在字符串中首次出现的位置为 i,那么返回的地址可以理解为 str + i。

提示:如果希望查找某字符在字符串中最后一次出现的位置,可以使用 strrchr() 函数。

Ⅶ C语言查找字符串位置函数。请高手帮忙解决

#include<stdio.h>

#include<string.h>

intfindstr(char*s_str,char*d_str);

intmain(void){

chars1[80],s2[80];

intn;

printf("请输入一个字符串:");

gets(s1);

printf("请输入你要查找的字符串:");

gets(s2);

n=findstr(s1,s2);

printf("%s在%s里共有%d个 ",s2,s1,n);

return0;

}

intfindstr(char*s_str,char*d_str){

inti,j,k,count=0;

chartemp[80];

intlength=strlen(d_str);

for(i=0;i<strlen(s_str);i++){

k=0;

for(j=i;j<i+length;j++)

temp[k++]=s_str[j];

temp[k]=''

if(!strcmp(temp,d_str))count++;

}

returncount;

}

Ⅷ 求标准C语言,查找某字符串在指定字节串中的位置代码。

#include<stdio.h>
#include<stdlib.h>

intFindStr(char*source,char*target)
{
inti,j;
ints_len=strlen(source);
intt_len=strlen(target);
if(t_len>s_len)
{
return-1;
}
for(i=0;i<=s_len-t_len;i++)
{
j=0;
intflag=1;
if(source[i]==target[j])
{
intk,p=i;
for(k=0;k<t_len;k++)
{
if(source[p]==target[j])
{
p++;
j++;
continue;

}
else
{
flag=0;
break;
}
}
}
else
{
continue;
}
if(flag==1)
{
returni+1;
}
}
return-1;
}

intmain(intargc,char*argv[])
{
chars1[50]={""};
chars2[50]={""};
fflush(stdin);
scanf("%[^ ]",s1);
fflush(stdin);
scanf("%[^ ]",s2);
intre=FindStr(s1,s2);
printf("%d",re);
return0;
}

Ⅸ (c++或C语言)查找文件中字符串的位置

头文件:#include <string.h>

strchr() 用来查找某字符在字符串中首次出现的位置,其原型为:
char * strchr (const char *str, int c);

【参数】str 为要查找的字符串,c 为要查找的字符。

strchr() 将会找出 str 字符串中第一次出现的字符 c 的地址,然后将该地址返回。

注意:字符串 str 的结束标志 NUL 也会被纳入检索范围,所以 str 的组后一个字符也可以被定位。

【返回值】如果找到指定的字符则返回该字符所在地址,否则返回 NULL。

返回的地址是字符串在内存中随机分配的地址再加上你所搜索的字符在字符串位置。设字符在字符串中首次出现的位置为 i,那么返回的地址可以理解为 str + i。

提示:如果希望查找某字符在字符串中最后一次出现的位置,可以使用 strrchr() 函数。

【实例】查找字符5首次出现的位置。
复制纯文本新窗口
#include <stdio.h>#include <stdlib.h>#include <string.h>int main(){ char *s = ""; char *p; p = strchr(s, '5'); printf("%ld\n", s); printf("%ld\n", p); system("pause"); return 0;}