2006-c-三

/*三.由键盘输入n(n<50)个英文单词,每个单词由空格分隔。试编写一个递归函数,判断这n个单词是否是按字典顺序排列的。*/
#include<stdio.h>
#include<string.h>
#define MAXSIZE 50
int WordSort(char word[][15], int n)
{
    if (n < 0)
        return -1;
    else if (n == 1)
        return 1;
    else
    {
        if(strcmp(word[n-1], word[n-2])>0 && WordSort(word, n-1))//下标从0开始最后一个为n-1
            return 1;
        else
            return 0;
    }
}
void main()
{
    char word[MAXSIZE][15];
    int size, i;

    printf("输入单词个数,小于50:\n");
    scanf("%d", &size);

    printf("\n输入%d单词,以空格隔开:\n", size);
    for (i = 0; i < size; i++)
        scanf("%s", word[i]);

    switch (WordSort(word, size))
    {
        case -1:
            printf("\n请输入单词\n");break;
        case 0:
            printf("\n输入的单词不是按字典顺序排序!\n");break;
        case 1:
            printf("\n输入的单词是按字典顺序排序!\n");break;
        default: ;
    }
}