输入两个字符串,不用系统提供的函数strcmp(),比较两个字符串是否相等,用指针实现

发布网友 发布时间:2022-04-23 10:15

我来回答

3个回答

热心网友 时间:2023-10-11 05:05

#include <stdio.h>
#include <string.h>
void main()
{
char str1[40],str2[40],*p,*q;
printf("please input the first string:");
gets(str1);
printf("please input the second string:");
gets(str2);
p=str1;
q=str2;
while(*p!='\0'||*q!='\0')
{
if(*p==*q)
{
p++;
q++;
}
else if(*p<*q)
{
printf("第一个字符串小于第二个字符串\n");
break;
}
else
{
printf("第一个字符串大于第二个字符串\n");
break;
}
}
if(*p==*q)/*当上述*p或*q都为'\0'时,若此时还没比较出来两字符串的大小,则说明两字符串相等。此时输入就如你所写。*/
{
printf("两个字符串相等");
}
}
//顺便整理的一下你的格式,你看看吧,现在已经完成你所想要的功能了。呵呵

热心网友 时间:2023-10-11 05:05

后面当1str[30]和str2[30]都是空时,两者相等,上面加如果任一个字符串的字符为空时,停止对比追问你可以写出来吗 我不会改。。。。

热心网友 时间:2023-10-11 05:06

因为你的printf方法写在while的外面了。。追问你的改法问题又出来了 更乱了

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com