Sure! Here is a test case generator for the "Kobuta Nuki Kitsuneko" problem statement:

```python
import random
import string

def generate_word():
    length = random.randint(1, 32)
    return ''.join(random.choice(string.ascii_lowercase) for _ in range(length))

def tcgen():
    datasets = []

    num_datasets = random.randint(1, 50)
    for _ in range(num_datasets):
        n = random.randint(2, 10000)
        words = [generate_word() for _ in range(n)]
        datasets.append((n, words))
    
    # Add a zero line to indicate the end of the input
    datasets.append(0)
    
    return datasets

# Function to format the test case output as specified
def format_test_case(datasets):
    formatted = []
    for dataset in datasets:
        if dataset == 0:
            formatted.append('0')
        else:
            n, words = dataset
            formatted.append(str(n))
            formatted.extend(words)
    return '\n'.join(formatted)

# Example usage
datasets = tcgen()
formatted_test_case = format_test_case(datasets)
print(formatted_test_case)
```

### Explanation:
- The `generate_word` function creates a random word with a length between 1 and 32 characters, consisting of lowercase English letters.
- The `tcgen` function generates multiple datasets, each containing a random number of words (between 2 and 10,000). It then appends a zero line to indicate the end of the input.
- The `format_test_case` function formats the generated datasets into the required input format for the problem statement, with each dataset followed by a single zero line.

This generator will provide varied and comprehensive test cases to thoroughly test your solution for the "Kobuta Nuki Kitsuneko" problem.