⑴ 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]='