输入长度不超过80的英文文本,统计该文本中长度为n的单词总数(单词之间只有一个空格)。
输入格式:
首先输入一个正整数T,表示测试数据的组数,然后是T组测试数据。
每组数据首先输入1个正整数n(1≤n≤50),
然后输入1行长度不超过80的英文文本(只含英文字母和空格)。注意:不要忘记在输入一行文本前吸收换行符。
输出格式:
对于每组测试数据,输出长度为n的单词总数。
输入样例:
2
5
hello world
5
acm is a hard game
输出样例:
2
0
code演示:
#include <string.h>
#include <stdio.h>
int main() {
int t;
scanf("%d",&t);
while (t--) {
int ji, cnt = 0;
scanf("%d",&ji);
getchar();
char s[100];
int b[80];
gets(s);
int n = strlen(s);
b[0] = 0;
int k = 1;
for (int i = 0; i < n; i++)
{
if (s[i] == ' ') {
b[k] = i;
k++;
}
}
b[k] = n - 1;
if (b[1] - b[0] == ji)cnt++;
for (int i = 2; i <k; i++)
{
if (b[i] - b[i - 1] == ji+1)cnt++;
}
if (b[k] - b[k-1] == ji)cnt++;
printf("%d\n",cnt);
}
return 0;
}
结果演示:
pta两百题继续冲冲冲!!!
pta两百题继续冲冲冲!!!
pta两百题继续冲冲冲!!!
pta两百题继续冲冲冲!!!
pta两百题继续冲冲冲!!!
pta两百题继续冲冲冲!!!