qq_37362700
qq_37362700
2017-06-09 03:06

C语言中的关于循环与排序问题

  • 排序 内存
  • 语言
  • c
  • 图片
  • 存储

其中在排序语句中的循环语言有些不理解,如下图:
for(j=i+1;j<num;j++)
[for(j=i;j<num;j++)]
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;
}

  • 点赞
  • 回答
  • 收藏
  • 复制链接分享

5条回答