用c语言实现:输入两个不包含空格的字符串,判断两个由大小写字母组成的字符串在忽略大小写后是否相等。 注意:由于gcc编译器不能使用gets函数,可以使用scanf()函数。
时间: 2024-02-06 13:09:56 浏览: 139
可以使用strcmp()函数进行忽略大小写比较,但是该函数在不同系统中的实现可能存在差异,因此可以自行编写一个忽略大小写的字符串比较函数。
以下是一个示例代码:
```c
#include <stdio.h>
#include <ctype.h>
int strcasecmp(const char *s1, const char *s2) {
int i;
for (i = 0; s1[i] != '\0' && s2[i] != '\0'; i++) {
if (tolower(s1[i]) != tolower(s2[i])) {
return tolower(s1[i]) - tolower(s2[i]);
}
}
return s1[i] - s2[i];
}
int main() {
char s1[100], s2[100];
printf("请输入字符串1:");
scanf("%s", s1);
printf("请输入字符串2:");
scanf("%s", s2);
if (strcasecmp(s1, s2) == 0) {
printf("两个字符串在忽略大小写后相等\n");
} else {
printf("两个字符串在忽略大小写后不相等\n");
}
return 0;
}
```
该程序中使用了自定义的strcasecmp()函数来比较两个字符串是否相等,忽略了大小写。输入的字符串通过scanf()函数获取,而不是使用gets()函数,以避免缓冲区溢出等问题。
阅读全文