假设你们社区要竞选总统,有两个候选人是A和B,社区里的每个学生都必须只投一票,最后得票多的人是总统.
输入描述:
一行,字符序列,包括A或B,输入以字符0结束。
输出描述:
一行,一个字符,A或B或E,输出A表示A票数多,输出B表示B票数多,输出E表示两人票数相等。
示例1
输入:
ABBABBAAB0
输出:
B
方法1:
#include<stdio.h> int main() { char n[100]; //输入 gets(n); //统计 int a = 0; int b = 0; int i = 0; while (n[i] != '0') { if (n[i] == 'A') { a ; } if (n[i] == 'B') { b ; } i ; } //输出 if (a > b) { printf("A\n"); } else if (b > a) { printf("B\n"); } else { printf("E\n"); } return 0; }
方法2:
#include<stdio.h> int main() { char arr[100] = { 0 }; gets(arr); int i = 0; int flag = 0; while (arr[i] != '0') { if (arr[i] == 'A') { flag ; } else if (arr[i] == 'B') { flag--; } i ; } if (flag > 0) printf("A"); else if (flag < 0) printf("B"); else printf("E"); return 0; }
方法3:
#include <stdio.h> int main() { char arr[100] = {0}; int ch = 0; int flag = 0; //如果getchar获取了 while(((ch=getchar()) != '0') && ch != EOF) { if(ch == 'A') { flag ; } else if(ch == 'B') { flag--; } } if(flag>0) printf("A"); else if(flag<0) printf("B"); else printf("E"); return 0; }