/*三.由键盘输入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: ;
}
}