您的位置:首页 > 其它

使用冒泡排序,排序多个字符串

2015-11-14 17:35 381 查看
  #define _CRT_SECURE_NO_WARNINGS 1

  #include

  #include

  #include

  int main()

  {

  char *str[] = { "hello", "change", "world", "come", "on" };

  //指针数组,每一个都是字符指针

  int i = 0;

  int j = 0;

  int flag;

  int size = sizeof(str) / sizeof(str[0]);

  for (i = 0; i < size - 1; i++) //n个字符串,交换(n-1)次

  {

  flag = 1; //设置标志位,优化冒泡

  for (j = 0; j <size p="" j++)<="" i;="" -="" 1="">

  {

  if (strcmp(str[j], str[j + 1]) > 0) //常量字符串在空间的地址

  {

  char *tmp = NULL; //交换地址

  tmp = str[j];

  str[j] = str[j + 1];

  str[j + 1] = tmp;

  flag = 0;

  }

  }

  if (flag) //说明未进入if内部,即尚未交换已经是所需的输出顺序

  {

  break;

  }

  }

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

  {

  printf("%s ", str[i]);

  }

  printf("\n");

  system("pause");

  return 0;

  }
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  warnings