题目描述 已知两个字符串A,B。 连续进行读入n次。 每次读入的字符串都为A|B。 输出读入次数最多的字符串。 输入描述: 第一行输入整数n.(1<=n<=100)。 以下n行读入n个字符串。 输出描述: 输出读入次数最多的字符串,如果两个字符串读入次数相同输出,”dogfall”。 示例 示例1 输入 3 A ASDA A 复制 输出 A 复制 示例2 输入 7 sdadasd sdadasd sdadasd ewqewq sdadasd ewqewq sdadasd 复制 输出 sdadasd 复制 提示 无 用c++编一段代码
时间: 2023-01-31 09:09:40 浏览: 214
蓝桥杯软件大赛真题之FJ的字符串.rar
下面是用 C 语言实现的代码:
```
#include <stdio.h>
#include <string.h>
int main()
{
int n;
scanf("%d", &n);
int count_a = 0, count_b = 0;
char s[20]; // 存储输入的字符串
for (int i = 0; i < n; i++) {
scanf("%s", s);
if (strcmp(s, "A") == 0) {
count_a++;
} else if (strcmp(s, "B") == 0) {
count_b++;
}
}
if (count_a > count_b) {
printf("A");
} else if (count_a < count_b) {
printf("B");
} else {
printf("dogfall");
}
return 0;
}
```
算法流程:
1. 读入 n,表示要输入的字符串的个数。
2. 初始化两个变量 count_a 和 count_b,分别用来记录字符串 A 和 B 的出现次数。
3. 读入 n 个字符串,如果是 A,则将 count_a 加 1;如果是 B,则将 count_b 加 1。
4. 比较 count_a 和 count_b 的值,如果 count_a > count_b,则输出 A;如果 count_a < count_b,则输出 B;如果 count_a = count_b,则输出 "dogfall"。
5. 结束程序。
代码中使用了 string.h 库中的 strcmp 函数来比较两个字符串是否相同。该函数会返回两个字符串的差值,如果两个字符串相同,则返回 0。
阅读全文