#include<iostream>

#include<string>

using namespace std;

void buddle(char*,int);//对输入字符的AScII进行排序

void delete_num(char*,int);//去除已排好顺序中重复的字符.

int main()

{  

while(1)

{

char s[30];//定义存储字符的字符数组。

string s1;//定义string对象

cout<<"enter strings:"<<endl;

cin>>s1;//将输入字符串存入字符对象s1中。

int len=s1.size();//取出输入字符个数

s1.copy(s,len,0);//将输入字符复制到字符数组s中

buddle(s,len);//冒泡排序

delete_num(s,len);

}

return 1;





}

void buddle(char*p1,int x)

{

for(int i=0;i<x;++i)//冒泡排序过程

{

for(int j=1;j<x-i;++j)

{

int temp=p1[j-1];

if(p1[j-1]>=p1[j])

{

p1[j-1]=p1[j];

p1[j]=temp;

}

}

}

}





void delete_num(char* p2,int y)

{

char *b=new char[y];//选出不重复的字符存入数组b中

b=p2;

int validnum=0;//表示已存入b中的不重复字符个数

int flag;//标记刚从s中取出的数是否与b中任意数相同

for(int i=0;i<y;++i)

{

flag=1;

for(int j=0;j<validnum;++j)

if(p2[i]==b[j])

{

flag=0;

break;

}

if(flag)

b[validnum++]=p2[i];

}

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

for(int j=i+1;j<validnum;++j)

for(int num=j+1;num<validnum;++num)

cout<<b[i]<<" "<<b[j]<<" "<<b[num]<<endl;//输出b数组中从左向右任意三个组合

}

13test07;字符排序,去重,三三输出的更多相关文章

  1. 笔试题——C++字符排序

    题目:字符排序 题目介绍:输入一组以空格隔开的字数串,将它们奇数位升序排序,偶数位降序排序,再重新输出成新的字数串. 例: 输入: 4 6 2 3 6 7 8 1 奇数位:4 2 6 8 ——2 4 ...

  2. Python2/3的中、英文字符编码与解码输出: UnicodeDecodeError: 'ascii' codec can't decode/encode

    摘要:Python中文虐我千百遍,我待Python如初恋.本文主要介绍在Python2/3交互模式下,通过对中文.英文的处理输出,理解Python的字符编码与解码问题(以点破面). 前言:字符串的编码 ...

  3. NX二次开发-C++的vector排序去重用法

    #include <algorithm> //vector排序去重 sort( BoxNum.begin(), BoxNum.end()); BoxNum.erase(unique(Box ...

  4. js实现排序去重计算字符次数

    /*去重*/ var arr=[1,4,4,7,3,9,0,3,2,1,"你好","你","你好","你 "]; var ...

  5. set自动排序去重 stringstream流分割字符

    链接:https://vjudge.net/problem/UVA-10815#author=0 题意:给几段句子,按字典序筛选出单词. 题解:用C的话太麻烦,不如用自动去重并排序的set容器.有个地 ...

  6. 利用BitMap进行大数据排序去重

    1.问题 问题提出: M(如10亿)个int整数,只有其中N个数重复出现过,读取到内存中并将重复的整数删除. 2.解决方案 问题分析: 我们肯定会先想到在计算机内存中开辟M个int整型数据数组,来on ...

  7. 华为OJ—字符串排序(排序,忽略指定字符排序)

    http://career-oj.huawei.com/exam/ShowProblemInfo?id=2168 编写一个程序,将输入字符串中的字符按如下规则排序. 规则1:英文字母从A到Z排列,不区 ...

  8. Linux中sort和uniq关于排序去重的那些用法

    相信在Linux下对文件操作经常会用到sort和uniq命令,下面系统的介绍一下这两个命令的用法. sort命令是在Linux里非常有用,它将文件进行排序,并将排序结果标准输出.sort命令既可以从特 ...

  9. [Java] 字符流 Writer,输出字符数据PrintWriter

    package test.stream; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.Fi ...

随机推荐

  1. xtrabackup之Innobackupex全备恢复

    一.当前环境 [mysql@hadoop1 ~]$ mysql --defaults-/my.cnf -uroot -p123456 -P3306 mysql> show variables l ...

  2. virtualenv 安装

    virtualenv 是一个创建隔离的Python环境的工具. virtualenv要解决的根本问题是库的版本和依赖,以及权限问题.假设你有一个程序,需要LibFoo的版本1,而另一个程序需要版本2, ...

  3. flask程序部署在openshift上的一些注意事项

    https://www.openshift.com/blogs/how-to-install-and-configure-a-python-flask-dev-environment-deploy-t ...

  4. 【转】oracle connect by用法

    今天偶然看到connect by,但记不太清楚具体用法了.转了个博客(写的蛮好的),当作笔记. http://www.cnblogs.com/linjiqin/p/3152690.html 先用sco ...

  5. hdu 4198 Quick out of the Harbour

    题目连接 http://acm.hdu.edu.cn/showproblem.php?pid=4198 Quick out of the Harbour Description Captain Cle ...

  6. 部署ghost博客

    wget https://ghost.org/zip/ghost-0.6.4.zip npm install --production NODE_ENV=production npm start &g ...

  7. 条款10:令operator=返回一个*this的引用

    为了编程的简洁性,有时候需要串联赋值,如:x = y = z = 15; 由于赋值采用右结合,因此上述语句被解释为:x = (y = (z = 15)); 为了实现串联赋值,复制操作符函数必须返回一个 ...

  8. [转]vim常用命令

    [转]vim常用命令 http://www.cnblogs.com/sunyubo/archive/2010/01/06/2282198.html http://blog.csdn.net/wooin ...

  9. 在VS2010中ActiveX控件注册方法,使用regsvr32命令

    上一篇小编展示了如何设置VS2010自带的ActiveX控件的容器测试程序,现在为大家演示一下如何注册ActiveX控件. 首先简单了解一下ActiveX控件的知识,ActiveX控件:简单来说,就是 ...

  10. 微软职位内部推荐-Senior Software Development Engineer H/F

    微软近期Open的职位: Microsoft Engineering Center Paris (Xbox Music et Video) : Ingénieur en développement l ...