给出一个由O和X组成的串(长度为1~80),统计得分。每个O的分数为目前连续出现的O的个数,X的得分为0。例如,OOXXOXXOOO的得分为2+0+1+0+3。
注明一下代码已经在gcc编译器上运行过了,没有错误
代码如下:
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#define maxn 100
char s[maxn];
int main()
{
while (scanf("%s", s) == 1)
{
int len = strlen(s);
int i, j = 0,kase=1;
for (i = 0; i <len; i++)
{
if (s[i] == 'O')
{
if (kase == 0)
{
printf("0+");
}
j++;
kase = 1;
if (i + 1 == len){ printf("%d", j); break; }
}
if (s[i] == 'X')
{
if (kase == 1)
{
printf("%d+", j);
kase = 0;
}
j = 0;
if (i + 1 == len) { printf("%d", j); break; }
}
}
}
return 0;
}