c语言,给定一个字符串,若里面含有相同的字母则返回1,否则返回0
时间: 2024-12-17 15:32:51 浏览: 1
在C语言中,如果你想检查一个字符串是否包含重复的字符并返回相应的结果,可以创建一个布尔变量,遍历字符串,同时使用一个数组或哈希表来记录每个字符是否已经出现过。以下是一个简单的示例:
```c
#include <stdbool.h>
#include <string.h>
int hasDuplicateChars(char *str) {
bool char_set[256] = {false}; // 假设ASCII字符集大小
for (int i = 0; str[i] != '\0'; i++) {
if (char_set[str[i]]) {
return 1; // 如果字符已存在,则返回1表示有重复
}
char_set[str[i]] = true;
}
return 0; // 没有重复字符,返回0
}
// 使用示例
int main() {
char str[] = "hello";
int result = hasDuplicateChars(str);
if (result == 1) {
printf("String contains duplicate characters.\n");
} else {
printf("String does not contain duplicate characters.\n");
}
return 0;
}
```
这个函数`hasDuplicateChars`会检查输入字符串`str`中的所有字符,如果发现有重复,则返回1;如果没有,则返回0。
阅读全文