2017-12-09 杭电OJ2000 《ASCII码排序》
来源:互联网 发布:形势与政策论文 网络 编辑:程序博客网 时间:2024/05/17 07:54
1.题目描述
Problem Description
输入三个字符后,按各字符的ASCII码从小到大的顺序输出这三个字符。
Input
输入数据有多组,每组占一行,有三个字符组成,之间无空格。
Output
对于每组输入数据,输出一行,字符中间用一个空格分开。
Sample Input
qwe
asd
zxc
Sample Output
e q w
a d s
c x z
2.源代码
#include<iostream>using namespace std;int main(){ char s[3]; while(cin>>s[0]>>s[1]>>s[2]) //控制输入循环 { int i,j; //冒泡排序 for(i=0;i<2;i++) //共进行2趟比较(2=3-1) for(j=0;j<2-i;j++) //每趟中要进行(2-i)次两两比较 if(s[j]>s[j+1]) swap(s[j],s[j+1]); //输出结果 cout<<s[0]<<" "<<s[1]<<" "<<s[2]<<endl; }}
3.运行截图
4.调试信息
主要是冒泡排序那里不是很清楚,重点是分清n个数要进行n-1趟比较,每趟比较中又是进行(n-1)-i次两两比较。 针对这个问题再详细看一下。假设是5,4,3,2,1,这一串数字进行冒泡排序。 那么先从第一个数5开始: 5—4,5—3,5—2,5—1 //一共是4趟。 现在5在这列数的最后了,然后有从第一个数,也就是4开始比较: 4—3,4—2,4—1 //一共是3趟(因为知道第四趟比较时5比4大,所以不比,节省时间) (@_@;)然后这样以此类推,比到最后一位数的时候,也就是1是第一位的时候,也就不用再来一趟比较了,所以n个数只要n-1趟比较,每趟比较要((n-1)-趟数)来计算。
如果不对请您指正。。。。
阅读全文
0 0
- 2017-12-09 杭电OJ2000 《ASCII码排序》
- OJ2000题ASCII码排序
- 杭电oj2000-C语言
- 杭电hdu 2000 ASCII码排序
- 杭电 hdu 2000 ASCII码排序
- 杭电ACM 2000 ASCII码排序
- 杭电2000 ASCII码排序
- 杭电 2000 ASCII码排序
- 杭电ACM 2000 ASCII码排序
- 杭电acm 2000 ASCII码排序
- ASCII码排序(杭电2000)
- 杭电2000ASCII码排序--
- 杭电ACM 2000: ASCII码排序
- 杭电 acm 2000(ASCII码排序)
- 【杭电】[2000]ASCII码排序
- 【杭电2000】ASCII码排序
- 杭电 2000 ( ASCII码排序 ) java
- 杭电 2000 ASCII码排序
- eclipse快捷键
- android包反编译相关
- 扫雷增强版
- HDOJ1408 盐水的故事(高精度)
- 手把手教你完成App端-微信支付Android
- 2017-12-09 杭电OJ2000 《ASCII码排序》
- android学习路线
- iOS开发UI篇—Quartz2D (四) 图形上下文栈,矩阵
- JAVA中的HTTP通信
- android apk文件内部结构
- Revit二次开发之创建双坡式屋顶及在屋顶开洞口【比目鱼原创】
- android studio快捷键
- 编程思想 之「操作符」
- mac下svn服务器的搭建