c语言中如何判断两个字符串相等

如题所述

第1个回答  推荐于2017-10-06
#include <string.h>

char s1[10],s2[10];
...
if(strcmp(s1,s2)==0)
printf("两字符串相等\n");

string.h 头文件中就有比较函数,可以用来比较是否相等本回答被提问者采纳
第2个回答  2019-09-21
C语言提供了几个标准库函数,可以比较两个字符串是否相同。strcmp()函数有两个参数,即要比较的两个字符串。strcmp()函数对两个字符串进行大小写敏感的(case-sensitiVe)和字典式的(lexicographic)比较,并返回下列值之一:
----------------------------------------------------





----------------------------------------------------
<0
第一个字符串小于第二个字符串
0
两个字符串相等
·
>0
第一个字符串大于第二个字符串
----------------------------------------------------
第3个回答  2008-06-03
循环
#define LONG 20
char a[LONG]={...}
char b[LONG]={...}

for(int i = 0;i < LONG;++i)
{
if(a[i] != b[i])
break;
}

if(i == 20)
printf("相等\n");
第4个回答  2018-05-18

程序实例如下:

#include <stdio. h>

#include <string. h>
void main (void);
void main(void)
{
char* str_1 = "abc" ; char * str_2 = "abc" ; char* str_3 = "ABC" ;
if (strcmp(str_1, str_2) == 0)
printf("str_1 is equal to str_2. \n");
else
printf("str_1 is not equal to str_2. \n");
if (strcmp(str_1, str_3) == 0)
printf("str_1 is equal to str_3.\n");
else
printf("str_1 is not equalto str_3.\n");
}

上例的打印输出如下所示:
str_1 is equal to str_2.
str_1 is not equal to str_3.

第5个回答  2019-08-25
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<math.h>
#include<time.h>

int main()
{
char str1[100];
char str2[100];
int n=0;
printf("请分别输入需要比较的两段字符串\n");
fgets(str1, sizeof(str1), stdin);
fgets(str2, sizeof(str2), stdin);
str1[strlen(str1) - 1] = 0;
str2[strlen(str2) - 1] = 0;
printf("%s", str1);
printf("%d个有效字符\n", strlen(str1));
printf("%s", str2);
printf("%d个有效字符\n", strlen(str2));
if (strlen(str1) != strlen(str2))
printf("两段字符串不相同\n");
else
{
for (int i = 0;i < strlen(str1);i++)
{
if (str1[i] != str2[i])
{
printf("两段字符串不相同\n");
break;
}
n++;
}
if (n == strlen(str1))
{
printf("两段字符串一样!");
}
}
system("pause");
return EXIT_SUCCESS;
}
相似回答