當前位置:成語大全網 - 新華字典 - c語言英語單詞按詞典順序排序時結果出錯,是哪裏寫錯了?

c語言英語單詞按詞典順序排序時結果出錯,是哪裏寫錯了?

#include?<stdio.h>

#include?<stdlib.h>

#include?<string.h>

int?main()?//主函數?

{

int?i,j,m,k;

char*?a[40];

char?temp[10]={"abcdefghi"};

srand(time(NULL));

for(j=0;j<40;j++)

{

a[j]=(char*)malloc(sizeof(char)*10);

m=4+rand()%(10-4);

for(i=0;i<m;i++)

{

temp[i]='a'+rand()%26;

}

temp[i]='\0';

strcpy(a[j],temp);

printf("%s\n",a[j]);

}

for(i=0;i<39;i++)

{

for(j=i;j<40;j++)

{

if(strcmp(a[i],a[j])>0)

{

strcpy(temp,a[i]);

strcpy(a[i],a[j]);

strcpy(a[j],temp);

}

}

}

printf("這40個單詞按照字典排序輸出為:\n");

for(i=0;i<40;i++)

{

printf("%s\n",a[i]);

}

}