永发信息网

怎样运用c语言指针变量比较两个字符串是否相等?请修改

答案:3  悬赏:20  手机版
解决时间 2021-03-26 07:47
  • 提问者网友:孤凫
  • 2021-03-25 08:45
怎样运用c语言指针变量比较两个字符串是否相等?请修改
最佳答案
  • 五星知识达人网友:舍身薄凉客
  • 2021-03-25 09:15

#include 
//比较s1和s2字符串是否相等
//相等返回1 不然返回0
int xiangdeng(char * s1,char *s2)
{
while(*s1==*s2 && *s1)
s1++,s2++;
if(!*s1 && !*s2)
return 1;
return 0;
}
int main(void)
{
char s1[100];
char s2[100];
printf("请输入两行字符串:
");
while (scanf("%s%s",s1,s2)==2)
{
if(xiangdeng(s1,s2))
printf("相等!
");
else 
printf("不相等!
");
printf("请输入两行字符串:
");
}
return 0;
}
全部回答
  • 1楼网友:空山清雨
  • 2021-03-25 11:14
直接用strcmp就行了。
  • 2楼网友:雾月
  • 2021-03-25 10:16
#include
int bijiao(char *p_1,char *p_2,int c);
int main(void)
{
char a[21];
char b[21];
int i,t,c;
printf("定义字符串的元素个数为\n");
scanf("%d",&c);
while(getchar()!='\n')
continue;//这一句用来消除\n的影响
printf("为字符串连续输入%d个\(少于20个\)字符回车结束\n",c);
for(i=0;i {
scanf("%c",&a[i]);
}
while(getchar()!='\n')
continue;
printf("为字符串b连续输入%d个\(少于20个\)字符回车结束\n",c);
for(i=0;i {
scanf("%c",&b[i]);
}
while(getchar()!='\n')
continue;
t=bijiao(a,b,c);
printf("%d",t);
if(t==1)
printf("字符串a和b相同");
else
printf("字符串a与b不同");
return 0;
}
int bijiao(char *p_1,char *p_2,int c)
{
int i,x=1;
for(i=0;i {
if(*(p_1+i)!=*(p_2+i))
{
x=0;
break;
}
}
return x;
}改动较大,不知是不是还符合你的本意
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯