用c语言编写检查输入的一行字中有无相邻的两字符相同
时间: 2024-10-21 18:05:17 浏览: 19
在C语言中,你可以通过遍历字符串并比较当前字符和下一个字符来检查一行字(字符串)中是否有相邻的两个相同的字符。以下是一个简单的函数示例:
```c
#include <stdio.h>
#include <stdbool.h>
#include <string.h>
bool checkAdjacentDuplicates(char str[]) {
int len = strlen(str);
for (int i = 0; i < len - 1; i++) { // 遍历字符串,跳过最后一个字符,因为没法跟下一个比
if (str[i] == str[i + 1]) { // 如果找到相邻的字符相等
return true; // 返回true,表示存在相邻的重复字符
}
}
return false; // 没有发现重复,返回false
}
int main() {
char input[100];
printf("Enter a line of characters: ");
fgets(input, sizeof(input), stdin); // 从用户输入读取一行字符
input[strcspn(input, "\n")] = '\0'; // 去除换行符
if (checkAdjacentDuplicates(input)) {
printf("There are adjacent duplicate characters.\n");
} else {
printf("No adjacent duplicate characters found.\n");
}
return 0;
}
```
在这个程序中,`checkAdjacentDuplicates` 函数接收一个字符串作为输入,并通过比较每个字符与其后的字符来判断是否存在相邻重复。如果发现,则返回 `true`;如果没有则返回 `false`。
阅读全文