其中在排序语句中的循环语言有些不理解,如下图:
[for(j=i;j<num;j++)]
从运行结果上来看没有什么不一样的,但没有为什么运行是一样的?
#include <string.h>
#include <stdlib.h>
#include <stdio.h>
void main (int argc,char *argv[])
{
int i=0,j=0;
int num=6;
char myBuf[30]={0};
char tempBuf[30]={0};
char myArray[10][30]={"aaaaa","ffffffff","bbbbbbbbbbb","ccccc","dddddd","eeeeeeee"};
//打印
for (i=0;i<num;i++)
{
printf("myArray[%d] %s\n",i,myArray[i]);
}
//排序
for (i=0;i<num;i++)
{
for (j=i;j<num;j++)
{
if (strcmp(myArray[j],myArray[i])>0)
{
strcpy(tempBuf,myArray[i]);
strcpy(myArray[i],myArray[j]);
strcpy(myArray[j],tempBuf);
}
}
}
//打印
printf ("*************\n");
for (i=0;i<num;i++)
{
printf("myArray[%d] %s\n",i,myArray[i]);
}
printf("hello word !\n");
return 0;
}