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

c语言找出两个字符串

发布时间: 2022-08-04 12:58:45

c语言如何找出两行字符串不同的字符

首先,根据你描述的显然是遍历短的字符串,在长字符串中找到的不相同的字符,这个是前提
1)比较两个字符串长度,假设长的为longstr,短的为shortstr
2)定义两个指针*plong和*qshort,分别指向长短字符串
3)依次比较*plong==*qshort?是否相等,若相等,则plong++,qshort++
若不相等,则输出*plong,同时plong++,此时qshort不动,继续比较,不断循环,直到plong遍历完成,此时有可能短的字符串还没遍历完,由于你的描述不充分,只能这么回答了

⑵ c语言从文件中查找字符串

c语言从文件中查找字符串的方法。

如下参考:

1.打开python命令窗口,定义并分配字符串变量s1。

⑶ c语言编程,找出两个字符串中同时出现的字符

#include<stdio.h>
voidmain()
{
intmap[256]=0;
intc;
inti;
while((c=getchar())!=' ')map[c]|=1;
while((c=getchar())!=' ')map[c]|=2;
for(i=c=0;i<256;i++)
{
if(map[i]==3)
{
putchar(i);
c++;
}
}
if(c==0)printf("no");
putchar(' ');
}

⑷ 在两个字符串中找字符 哪位大神帮忙答一下这道C语言题目啊

//方法,找出同时在两个数组中出现的字母,做标记,剩下的就是本题结果。

void GetDiffChar( char* str1, char* str2, char* strOut)
{
const int nCout1 = strlen(str1);
const int nCout2 = strlen(str2);

for(int i=0; i<nCout1; i++)
{
char ch = str1[i];
for(int j=0; j<nCout2; j++)
{
if (str2[j] == ch)
{
str1[i] = 0xff; // mark
str2[j] = 0xff;
break;
}
}
}

//out
int nOutIndex = 0;
for(int i=0; i<nCout1; i++)
{
if(((unsigned char)str1[i]) != 0xff)
{
strOut[nOutIndex++] = str1[i];
}
}

for(int i=0; i<nCout2; i++)
{
if(((unsigned char)str2[i]) != 0xff)
{
strOut[nOutIndex++] = str2[i];
}
}
}

int main(void)
{
char str1[] = "1245678";
char str2[] = "943518";
char strOut[100] = {0};
GetDiffChar(str1, str2, strOut);
printf(strOut);

return 0;
}

⑸ c语言编程,找两个字符串中同时出现的字符并输出,急求,谢谢!

#include<stdio.h>

int main()

{int i,i1,i2,j,k;

char s[200]={0},s1[200],s2[200];

gets(s1);

gets(s2);

for(i=i1=i2=0;s1[i1];i1++)

{for(i=0;s[i];i++)

if(s[i]==s1[i1])

break;

if(s[i]==0)

{for(i2=0;s2[i2];i2++)

if(s2[i2]==s1[i1])

{s[i++]=s1[i1];break;}

}

}

s[i]='';

printf("%s ",s);

return 0;

}

⑹ 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语言查找字符串

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

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

注意事项:

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

⑻ 用C语言编写一个函数,找出两个字符串的最大公共子字符串。

#include<stdio.h>
#include<string.h>
char *maxcommonstr(char *a,char *b);
int main()
{
char s[] = "abcabcdefabc";
char *d = "adcdef";
char *common=NULL;
common = maxcommonstr(s,d);
puts(common);
return 0;
}
char *maxcommonstr(char *a,char *b)
{
static char d[255] = {0};//存储最大公共字串
char temp[255]={0};//临时存储公共字串
char *p = NULL,*q = NULL,*r = NULL,*s =NULL;
while(*a)//从第一个字符开始遍历a串
{
p = a;//p指向a串
q = b;//q指向b串
r = temp;
for(s = q;s <= b +strlen(b); s ++)//从第一个字符开始遍历b串
{
q = s;
while( *p && *q && *p == *q )// 若相等则赋值后移指针
{
*r = *p;
p ++;
q ++;
r ++;
}
}
*r = '\0';//末尾手动补0
if(strlen(temp) > strlen(d)) //如果此趟字串比以记录最大字串长 则改变最大字串存储
strcpy(d,temp);
a++;// a串后移
}

return d;
}
仅供参考……

⑼ 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
}
}