字符串中重复的字符

  • 本文关键字:字符 字符串 c
  • 更新时间 :
  • 英文 :


我正在尝试创建一个函数来识别一个字符是否在给定字符串中重复。

int checkrow(char* row) {
int count, r;
for(int i = 0; i < strlen(row); i++) {
count = 1;
for(int j = i + 1; j < strlen(row); j++) {
if(row[i] == row[j]) {
count = count + 1;
}
}
if(count > 1 ) {
r = 0;
}
else {
r = 1;
}
}
return r;
}

这是我目前的功能,我没有得到错误或警告消息,但它不能识别重复字符。

我对C很陌生,任何帮助都会很感激!

对于您测试的每个字符,您将r设置为该字符是否重复。因此,如果第一个字符重复,则设置为r = 0,但如果第二个字符不重复,则设置为r = 1

你不需要测试每个字符。只要找到重复的字符,就可以返回0。如果到达循环的末尾,没有重复,那么返回1

int checkrow(char* row) {
for(size_t i = 0; i < strlen(row); i++) {
for(size_t j = i + 1; j < strlen(row); j++) {
if(row[i] == row[j]) {
return 0;
}
}
}
return 1;
}

相关内容

  • 没有找到相关文章

最新更新