C语言编程问题(剪刀石头布判断赢家)

详细问题请参加图片我用VC++6.0写的代码是:#include<stdio.h>intmain(){inti,j,n,t,C,count1,count2;/*R石头S剪... 详细问题请参加图片

我用 VC++ 6.0 写的代码是:
#include <stdio.h>
int main()
{
int i,j,n,t,C,count1,count2; /*R石头 S剪刀 P布*/
char a,b;
while(scanf("%d",&t)!=EOF) /*t表示样例数目*/
{
for(C=0;C<t;C++) /*C用来计数*/
{
count1=0;
count2=0;
scanf("%d",&n);
for(j=0;j<n;j++) /*j用来计数*/
{
scanf("%c %c",&a,&b); /*输入字符R、S或者P*/
if(a=='R' && b=='S') /*R石头 S剪刀 P布*/
{
count1++;
}
else if(a=='S' && b=='R') /*R石头 S剪刀 P布*/
{
count2++;
}
else if(a=='R' && b=='P') /*R石头 S剪刀 P布*/
{
count2++;
}
else if(a=='P' && b=='R') /*R石头 S剪刀 P布*/
{
count1++;
}
else if(a=='S' && b=='P') /*R石头 S剪刀 P布*/
{
count1++;
}
else if(a=='P' && b=='S') /*R石头 S剪刀 P布*/
{
count2++;
}
else
{
count1++;
count2++;
}
}

if(count1>count2)
{
printf("Player1\n");
}
else if(count1==count2)
{
printf("TIE\n");
}
else
{
printf("Player2\n");
}
}
}
return 0;
}
希望大神指点……
展开
 我来答
空空2012xxy
2015-02-12 · TA获得超过432个赞
知道小有建树答主
回答量:612
采纳率:0%
帮助的人:628万
展开全部
#include<stdio.h>

int main()
{
int t, n, s1, s2;
char a, b;

scanf("%d", &t);

while (t--) {
scanf("%d%*c", &n);

s1 = s2 = 0;

while (n--) {
scanf("%c %c%*c", &a, &b);

if ((a == 'R' && b == 'S') || (a == 'S' && b == 'P') || (a == 'P' && b == 'R'))
s1++;
else if ((b == 'R' && a == 'S') || (b == 'S' && a == 'P') || (b == 'P' && a == 'R'))
s2++;
else {
s1++;
s2++;
}
}

if (s1 > s2)
printf("Player 1\n");
else if (s1 < s2)
printf("Player 2\n");
else
printf("TIE\n");
}

return 0;
}
追问

请问为什么我的代码运行之后,第一次都会输出TIE呢?如图

本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Master15161
2015-02-12 · TA获得超过374个赞
知道答主
回答量:67
采纳率:40%
帮助的人:28.3万
展开全部
输入的地方有问题,改为scanf( "%d%d" , &a , &b);
输出的地方也有问题,不过那个是小问题,你运行就知道了
更多追问追答
追问
不懂,改了之后一直输出TIE!    好恼火……
追答
else后面要有大括号的,而且即使这样还有问题
后面是我写的,你看对不对
if (s1 > s2)
{
printf("Player 1\n"); printf("TIE\n"); printf("Player 2\n");
}
else
{
printf("Player 2\n"); printf("TIE\n");printf("Player 1\n");
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
hermitlioliu
2015-02-12 · 超过55用户采纳过TA的回答
知道小有建树答主
回答量:78
采纳率:100%
帮助的人:49.9万
展开全部
Player 1 ; Player 2; 应该就是输出格式错。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式