给定一个长度为N的字符串代表下了n次棋的结果,若字符为F代表A赢了一句,若字符为K代表B赢了一句,确保字符为F或K统计一下谁赢的次数多编写c语言程序
时间: 2024-12-29 09:33:02 浏览: 19
为了编写一个C语言程序,用于统计给定字符串中'A'(F)和'B'(K)各自赢得比赛的次数,你可以创建一个简单的函数,接受字符串作为输入,并遍历该字符串。以下是一个基础的实现思路:
#include <stdio.h>
#include <string.h>
// 函数来计算A和B的胜次数
int countWins(char* str, char winnerChar) {
int wins = 0;
for (int i = 0; i < strlen(str); i++) {
if (str[i] == winnerChar) {
wins++;
}
}
return wins;
}
// 主函数
int main() {
char chessResult[100]; // 假设输入字符串最多100个字符
printf("请输入下棋结果字符串(仅限 'F' 和 'K'): ");
fgets(chessResult, sizeof(chessResult), stdin);
// 移除fgets最后的换行符
chessResult[strcspn(chessResult, "\n")] = '\0';
int aWins = countWins(chessResult, 'F');
int bWins = countWins(chessResult, 'K');
if (aWins > bWins) {
printf("A 赢了 %d 次\n", aWins);
} else if (bWins > aWins) {
printf("B 赢了 %d 次\n", bWins);
} else {
printf("双方打成平手,各赢 %d 次\n", aWins);
}
return 0;
}
在这个程序中,countWins
函数会计算字符串中指定字符的数量,然后在主函数中分别对'A'和'B'应用这个函数并比较它们的获胜次数。
阅读全文
相关推荐


















