c语言如何判断字符在一个字符串中出现,但没有在另一个字符串中出现中出现
3个回答
展开全部
用strchr函数,返回NULL就代表没有,非空就代表出现了。
char * strchr ( const char * string, int ch )
if( strchr(str1, c) != NULL && strchr(str2, c) == NULL )
.........
char * strchr ( const char * string, int ch )
if( strchr(str1, c) != NULL && strchr(str2, c) == NULL )
.........
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
将两个字符串赋给两个一维数组,定义一个变量赋值为指定的字符,用循环语句将两个数组里的元素与这个字符比较,如果相等就输出这个字符串。
char a[5]={'c','h','i','n','a'};
char b[6]={'p','e','o','p','l','e'};
int i,j;
char t='c';
for(i=0;i<5;i++)
{if(t==a[i]) cout<<"china"<<endl;
else cout<<"no china"<<endl;}
for(j=0;j<6;j++)
{if(t==b[j]) cout<<"people"<<endl;
else cout<<"no people";}
char a[5]={'c','h','i','n','a'};
char b[6]={'p','e','o','p','l','e'};
int i,j;
char t='c';
for(i=0;i<5;i++)
{if(t==a[i]) cout<<"china"<<endl;
else cout<<"no china"<<endl;}
for(j=0;j<6;j++)
{if(t==b[j]) cout<<"people"<<endl;
else cout<<"no people";}
追问
你能帮我讲一下这个程序的思路吗?#include
#include
void fun (char *s,char *t, char *u)
{ int i, j, sl, tl;
sl = strlen(s); tl = strlen(t);
for (i=0; i=tl)
*u++ = s[i];
}
*u = '\0';
}
追答
这个程序的作用应该是,比较两个字符串中字符的大小,将字符串s1中比字符串s2中字符大的输出来,赋给另外一个字符串u
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
/*
s中有,且t中没有的字符 : PrmerP
t中有,且s中没有的字符 : VaWndow
Press any key to continue
*/
#include<stdio.h>
int main() {
char s[] = "C++ Primer Plus";
char t[] = "Visual C++ Windows";
char *p,*q,flag;
printf("s中有,且t中没有的字符 : ");
for(p = s;*p;p++) {
flag = 1;
for(q = t;*q;q++) {
if(*p == *q) {
flag = 0;
break;
}
}
if(flag) printf("%c",*p);
}
printf("\n");
printf("t中有,且s中没有的字符 : ");
for(p = t;*p;p++) {
flag = 1;
for(q = s;*q;q++) {
if(*p == *q) {
flag = 0;
break;
}
}
if(flag) printf("%c",*p);
}
printf("\n");
return 0;
}
s中有,且t中没有的字符 : PrmerP
t中有,且s中没有的字符 : VaWndow
Press any key to continue
*/
#include<stdio.h>
int main() {
char s[] = "C++ Primer Plus";
char t[] = "Visual C++ Windows";
char *p,*q,flag;
printf("s中有,且t中没有的字符 : ");
for(p = s;*p;p++) {
flag = 1;
for(q = t;*q;q++) {
if(*p == *q) {
flag = 0;
break;
}
}
if(flag) printf("%c",*p);
}
printf("\n");
printf("t中有,且s中没有的字符 : ");
for(p = t;*p;p++) {
flag = 1;
for(q = s;*q;q++) {
if(*p == *q) {
flag = 0;
break;
}
}
if(flag) printf("%c",*p);
}
printf("\n");
return 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询