在主函数中输入10个等长的字符串,用另一函数对它们排序。然后在主函数输出这10个已排好序的字符串。
  
  用两种方法完成。
  
  方法一:用二维数组做函数参数;
  
  方法二:用指向一维数组的指针做函数参数。
  
  方法一:二维数组:
  
  #include<iostream>
  
  #include<string.h>
  
  using namespace std;
  
  int main()
  
  {
  
  char str[10][20];
  
  cout<<"input 10 strings in the same length:"<<endl;
  
  for(int i=0;i<10;i++)cin>>str[i];
  
  void sort(char [10][20]);
  
  sort(str);
  
  cout<<"now the sorted strings are:"<<endl;
  
  void print(char [10][20]);
  
  print(str);
  
  return 0;
  
  }
  
  void sort(char a[10][20])
  
  {
  
  for(int i=0;i<10;i++)
  
  {int k=i;char t[20];
  
  for(int j=i;j<10;j++)
  
  if(strcmp(a[j],a[k])<0)
  
  {
  
  strcpy(t,a[j]);strcpy(a[j],a[k]);strcpy(a[k],t);
  
  }
  
  }
  
  }
  
  void print(char a[10][20])
  
  {
  
  for(int j=0;j<10;j++)cout<<a[j]<<endl;
  
  }
  
  运行结果:
  
  方法二:用指向一维数组的指针做函数参数:
  
  #include<iostream>
  
  #include<string.h>
  
  using namespace std;
  
  int main()
  
  {
  
  char (*p)[10];char ch[10][10];
  
  cout<<"input 10 strings:"<<endl;
  
  for(int i=0;i<10www.furongpt.com;i++)cin>>ch[i];
  
  p=ch;
  
  void sort(char (*)[10]);
  
  sort(p);
  
  cout<<"now the strings are:"<<endl;
  
  for(int j=0;j<10;j++)cout<<p[j]<<endl;
  
  return 0;
  
  }
  
  void sort(char www.furong157.com (*p)[10])
  
  {
  
  for(int i=0;i<10;i++)
  
  {int k=i;char t[10];
  
  for(int j=i;j<10;j++)
  
  if(strcmp(p[j],p[k])www.567860.cn <0)
  
  {
  
  strcpy(t,p[j]);strcpy(p[j],p[k]);strcpy(p[k],t);
  
  }

c++字符串排序的更多相关文章

  1. OpenJudge计算概论-字符串排序

    /*====================================================================== 字符串排序 总时间限制: 1000ms 内存限制: 6 ...

  2. Java基础知识强化之IO流笔记52:IO流练习之 把一个文件中的字符串排序后再写入另一个文件案例

    1. 把一个文件中的字符串排序后再写入另一个文件 已知s.txt文件中有这样的一个字符串:"hcexfgijkamdnoqrzstuvwybpl" 请编写程序读取数据内容,把数据排 ...

  3. Trie树|字典树(字符串排序)

    有时,我们会碰到对字符串的排序,若采用一些经典的排序算法,则时间复杂度一般为O(n*lgn),但若采用Trie树,则时间复杂度仅为O(n). Trie树又名字典树,从字面意思即可理解,这种树的结构像英 ...

  4. Openjudge-计算概论(A)-字符串排序

    描述 参考整数排序方法,设计一种为字符串排序的算法,将字符串从小到大输出 输入 第一行为测试数据组数t, 后面跟着t组数据.每组数据第一行是n,表示这组数据有n行字符串,接下来是要排序的n行字符串.每 ...

  5. [C]字符串排序之-冒泡法

    在oj刷题,遇见一题字符串排序题. 脑海里瞬间闪过数组排序. 思路有了,打开题解看看别人的思路,发现好多人的排序方法显得比较臃肿,可能也是我的水平不够,欣赏不来吧. 不过用冒泡法排序的时候一定要记得字 ...

  6. 51 nod 1097 拼成最小的数 思路:字符串排序

    题目: 思路:1.以字符串输入这些整数. 2.对这些字符串排序,排序规则为尽量让能让结果变小的靠前. 代码中有注释,不懂的欢迎在博客中评论问我. 代码: #include <bits\stdc+ ...

  7. Mysql Order By 字符串排序,mysql 字符串order by

    Mysql Order By 字符串排序,mysql 字符串order by ============================== ©Copyright 蕃薯耀 2017年9月30日 http ...

  8. 浅谈iOS开发中多语言的字符串排序

    一.前言 在iOS开发中,一个经常的场景是利用tableview展示一组数据,以很多首歌曲为例子.为了便于查找,一般会把这些歌曲按照一定的顺序排列,还会加上索引条以便于快速定位. 由于歌曲名可能有数字 ...

  9. python字符串排序方法

    一般情况下,python中对一个字符串排序相当麻烦: 一.python中的字符串类型是不允许直接改变元素的.必须先把要排序的字符串放在容器里,如list. 二.python中的list容器的sort( ...

  10. strcmp()函数-比较字符串的大小、字符串排序

    1.比较字符串的大小: 用法:strcmp(字符串1,字符串2),若字符串1>字符串2 则返回1,字符串1<字符串2 则返回 -1,相等返回0. 比较两个字符串的算法是:逐个比较两个串中对 ...

随机推荐

  1. a data verification error occurred, file load failed

    1. 调试创龙DSP6748的时候,下载.out文件出现这个错误 2. 换了其他板子,还有其他仿真器也不行,最后发现是没加载GEL文件

  2. SSM-CRUD实战

    前端最容易出现缓存问题,所以以后每次都必须完全在idea加载完后,再在浏览器端多 执行 ctrl+F5 索要最新copy 这样就能拿到最新的改动了,就不会出现各种代码没问题但是功能就是实现不了的问题 ...

  3. vue2.0做移动端开发用到的相关插件和经验总结

    最近一直在做移动端微信公众号项目的开发,也是我首次用vue来开发移动端项目,前期积累的移动端开发经验较少.经过这个项目的锻炼,加深了对vue相关知识点的理解和运用,同时,在项目中所涉及到的微信api( ...

  4. 完美的【去重留一】SQL

    DELETE consum_record FROM consum_record, ( SELECT min(id) id, user_id, monetary, consume_time FROM c ...

  5. Kafka安装之三 spring-kafka实践

    一.spring-kafka配置详解 1.1 要是用spring-kafka 我们首先要在pom要.xml中引入spring-kafka包 <dependencies> <depen ...

  6. Matplotlib外观和基本配置笔记

    title: matplotlib 外观和基本配置笔记 notebook: Python tags:matplotlib --- 参考资料,如何使用matplotlib绘制出数据图形,参考另一篇mat ...

  7. c++ Dynamic Memory (part 1)

    1. make_shared<T>(args): return a shared_ptr dynamically allocated object of type T. Use args ...

  8. SVN服务器搭建及客户端配置

    为什么要使用SVN? 在程序的编写过程中,每个程序员都会负责开发一个或多个模块,且开发中会生成很多不同的版本, 这就需要程序员有效的管理代码,在需要的时候可以迅速,准确取出相应的版本. Subvers ...

  9. 严重: Failed to destroy end point associated with ProtocolHandler ["http-nio-8080"] java.lang.NullPointer

    刚接触servlet类,按照课本的方法使用eclipse新建了一个servlet类. 新建完成后,在web.xml里面进行注册 这时候就会报错了. 五月 07, 2016 11:23:28 上午 or ...

  10. 大白话Docker入门(一)

    摘要: #大白话Docker入门(一) 随着docker现在越来越热门,自己也对docker的好奇心也越来越重,终于忍不住利用了一些时间把docker学习一遍.目前的资料不少,但是由于docker的发 ...