c语言 编写函数,比较两个字符串是否相等
时间: 2024-01-06 19:06:36 浏览: 110
你可以使用标准库函数strcmp来比较两个字符串是否相等。
strcmp函数的原型为:
```c
int strcmp(const char *str1, const char *str2);
```
它的返回值有以下3种情况:
- 如果str1等于str2,则返回0。
- 如果str1小于str2,则返回一个负整数。
- 如果str1大于str2,则返回一个正整数。
因此,我们可以使用strcmp函数来比较两个字符串是否相等,如果返回值为0,则说明两个字符串相等。
比较函数的代码示例:
```c
#include <stdio.h>
#include <string.h>
int main()
{
char str1[100], str2[100];
printf("请输入第一个字符串:");
scanf("%s", str1);
printf("请输入第二个字符串:");
scanf("%s", str2);
if (strcmp(str1, str2) == 0)
{
printf("两个字符串相等\n");
}
else
{
printf("两个字符串不相等\n");
}
return 0;
}
```
在这个例子中,我们首先使用scanf函数从标准输入中读取两个字符串,然后使用strcmp函数比较它们是否相等,最后根据返回值输出结果。
相关问题
c语言编写函数,比较两个字符串是否相等
在C语言中,可以使用strcmp()函数来比较两个字符串是否相等。该函数位于<string.h>头文件中。
函数原型为:int strcmp(const char *s1, const char *s2);
函数返回值说明:
- 若返回值为0,则表示两个字符串相等。
- 若返回值小于0,则表示s1所指向的字符串小于s2所指向的字符串。
- 若返回值大于0,则表示s1所指向的字符串大于s2所指向的字符串。
下面是一个简单的例子:
```
#include <stdio.h>
#include <string.h>
int main()
{
char str1[20] = "Hello";
char str2[20] = "World";
if(strcmp(str1, str2) == 0)
{
printf("两个字符串相等\n");
}
else
{
printf("两个字符串不相等\n");
}
return 0;
}
```
输出结果为:"两个字符串不相等"。
c语言 编写函数,比较两个字符串是否相等(用指针完成)
可以使用以下代码来比较两个字符串是否相等:
```c
#include <stdio.h>
int compareStrings(char* str1, char* str2) {
while (*str1 == *str2) {
if (*str1 == '\0' || *str2 == '\0')
break;
str1++;
str2++;
}
if (*str1 == '\0' && *str2 == '\0')
return 1; // strings are equal
else
return 0; // strings are not equal
}
int main() {
char str1[100], str2[100];
printf("Enter the first string: ");
scanf("%s", str1);
printf("Enter the second string: ");
scanf("%s", str2);
if (compareStrings(str1, str2))
printf("The strings are equal\n");
else
printf("The strings are not equal\n");
return 0;
}
```
在上面的代码中,我们定义了一个名为 `compareStrings` 的函数来比较两个字符串是否相等。该函数接受两个参数,这两个参数都是指向字符数组的指针。在函数中,我们使用一个 while 循环来比较两个字符串中的每个字符。如果两个字符不相等,则返回 0,表示两个字符串不相等。如果两个字符串中的所有字符都相等,则返回 1,表示两个字符串相等。
在主函数中,我们使用 `scanf` 函数从用户那里获取两个字符串。然后,我们调用 `compareStrings` 函数来比较这两个字符串。如果这两个字符串相等,我们将输出 “The strings are equal”,否则我们将输出 “The strings are not equal”。
阅读全文