为什么除了第一次循环以后的都没有输入字符组a就出结果
#include <stdio.h>void main()
{
int n,i;
char c;
char a[20];
scanf("%d",&n);
scanf("%c",&c);
while(n!=0)
{
int r=0,y=0,p=0;
gets(a);
while(a[p]!='B'&&a[p]!='L')
{
if(a[p]=='R')
r++;
else
y++;
p++;
}
if(a[p]=='B')
{
if(r==7)
printf("Red\n");
else
printf("Yellow\n");
}
else
{
if(y==7)
printf("Yellow\n");
else
printf("Red\n");
}
scanf("%d",&n);
}
}