书上的代码,看不明白,请大家解释解释,c语言新手
是一个按字母排序的程序,书里面没怎么说,有些地方看的不是很明白, 希望各位说说,谢谢啦
程序代码:
#include <stdio.h>
#include <string.h>
#define SIZE_A 81
#define LIM 5
void StStr(char *str[],int num);
int main(void)
{
char input[LIM][SIZE_A];//为什么用二维数组?
char *pStr[LIM];
int ct=0,k=0;
while(ct<LIM && gets(input[ct])!=NULL&&input[ct][0]!='\0')//这里判断不太明白最后一个
{
pStr[ct]=input[ct];//这里也不太明白
ct++;
}
StStr(pStr,ct);
puts("Sort resule list :");
for (k=0;k<ct;k++)
{
puts(pStr[k]);
}
return 0;
}
/*按字母顺序排序*/
void StStr(char *str[],int num)
{
char *temp;
int i,s;
for (i=0;i<num-1;i++)
{
for (s=i+1;s<num;s++)//这里不明白
{
if (strcmp(str[i],str[s])>0)
{
temp=str[i];
str[i]=str[s];
str[s]=temp;
}
}
}
return;
}
[ 本帖最后由 XQwindow 于 2013-1-20 16:47 编辑 ]








