ytu 1064: 输入三个字符串,按由小到大的顺序输出(水题,字符串处理)
1064: 输入三个字符串,按由小到大的顺序输出
Time Limit: 1 Sec Memory Limit: 128 MB
Submit: 471 Solved: 188
[Submit][Status][Web Board]
Description
输入三个字符串,按由小到大的顺序输出。分别使用指针和引用方式实现两个排序函数。在主函数中输入和输出数据。
Input
3行字符串
Output
Sample Input
Sample Output
- #include <iostream>
- #include <string.h>
- using namespace std;
- template <class T>
- int mystrcmp(const T a,const T b)
- {
- int i;
- for(i=;a[i]||b[i];i++){
- if(a[i]=='\0')
- return -;
- else if(b[i]=='\0')
- return ;
- else if(a[i]<b[i])
- return -;
- else if(a[i]>b[i])
- return ;
- }
- return ;
- }
- void sort1(char *a,char *b,char *c)
- {
- char t[];
- if(mystrcmp(a,b)==) //a>b
- strcpy(t,a),strcpy(a,b),strcpy(b,t);
- if(mystrcmp(b,c)==) //b>c
- strcpy(t,b),strcpy(b,c),strcpy(c,t);
- if(mystrcmp(a,b)==) //a>b
- strcpy(t,a),strcpy(a,b),strcpy(b,t);
- }
- void sort2(string &a,string &b,string &c)
- {
- string t;
- if(mystrcmp(a,b)==) //a>b
- t=a,a=b,b=t;
- if(mystrcmp(b,c)==) //b>c
- t=b,b=c,c=t;
- if(mystrcmp(a,b)==) //a>b
- t=a,a=b,b=t;
- }
- int main()
- {
- void sort1(char *,char *,char *);
- void sort2(string &,string &,string &);
- char s1[],s2[],s3[];
- char *p1,*p2,*p3;
- string r1,r2,r3;
- cin>>s1>>s2>>s3;
- r1=string(s1);
- r2=string(s2);
- r3=string(s3);
- p1=s1;
- p2=s2;
- p3=s3;
- sort1(p1,p2,p3);
- cout<<s1<<endl<<s2<<endl<<s3<<endl;
- sort2(r1,r2,r3);
- cout<<r1<<endl<<r2<<endl<<r3<<endl;
- return ;
- }
- /**************************************************************
- Problem: 1064
- User: freecode
- Language: C++
- Result: Accepted
- Time:4 ms
- Memory:1272 kb
- ****************************************************************/
Freecode : www.cnblogs.com/yym2013
ytu 1064: 输入三个字符串,按由小到大的顺序输出(水题,字符串处理)的更多相关文章
- 【C++ 字符串题目】 输入三个人名,按字母顺序排序输出
题目来源:https://acm.ujn.edu.cn Problem A: [C++ 字符串] 输入三个人名,按字母顺序排序输出 Time Limit: 1 Sec Memory Limit: 1 ...
- 输入三个数a,b,c,要示按由小到大的顺序输出
#include<stdio.h>int main(){ double a,b,c,t; scanf("%lf %lf %lf",&a, ...
- 字符串数组 输入3个字符串,要求按由小到大的字母顺序输出; 输入n个学生的姓名和学号到字符串数组中,在输入一个姓名,如果班级有该生则返回其信息,否则返回本班无此人
输入3个字符串,要求按由小到大的字母顺序输出 如 输入franch england china,输出结果是china england franch 三个数排序输出,比较三个数的大小怎么做? a=18 ...
- 输入三个整数x、y、z,请把这三个数由小到大输出
题目:输入三个整数x,y,z,请把这三个数由小到大输出. 程序分析:我们想办法把最小的数放到x上,先将x与y进行比较,如果x> y则将x与y的值进行交换,然后再用x与z进行比较,如果x> ...
- 15 输入三个整数x,y,z,请把这三个数由小到大输出。
题目:输入三个整数x,y,z,请把这三个数由小到大输出. public class _015ThreeNumberSort { public static void main(String[] arg ...
- 代码实现:输入三个整数x,y,z,请把这三个数由小到大输出。
import java.util.Arrays; import java.util.Scanner; //输入三个整数x,y,z,请把这三个数由小到大输出. public class Test { p ...
- python中输入三个整数x,y,z,请把这三个数由小到大输出。
输入三个整数x,y,z,请把这三个数由小到大排序,再把数组由大到小排序,再输出最大值和最小值! #定义一个空数组 numbers = [] #循环遍历,下面的4是控制循环次数 for i in ran ...
- 编写Java程序_输入三个整数x,y,z,请把这三个数由小到大输出,请写出实现代码。(3种方法)
要求说明: 输入三个整数x,y,z,请把这三个数由小到大输出. 实现代码: 第1种方法: import java.util.Scanner; public class xyzMaxMin{ publi ...
- python基础练习题(输入三个整数x,y,z,请把这三个数由小到大输出)
day3 --------------------------------------------------------------- 实例005:三数排序 题目: 输入三个整数x,y,z,请把这三 ...
随机推荐
- BZOJ 4423: [AMPPZ2013]Bytehattan
Sol 对偶图+并查集. 思路非常好,将网格图转化成对偶图,在原图中删掉一条边,相当于在对偶图中连上一条边(其实就是网格的格点相互连边),每次加边用并查集维护就可以了. 哦对,还要注意边界就是网格外面 ...
- 前端之css、JavaScript和DOM
css position 一般组合 relative+absolute,以relative为父元素,absolute依照relative进行定位. opcity: 0.5 透明度 z-index: 层 ...
- Python自动化之语法基础
1 第一个程序 hello world 在Linux环境下执行 vim hello.py #!/usr/bin/env python #指定解释器 print("hello world&qu ...
- ITIL与ITSM的联系与区别
1.ITIL(IT Infrastructure Library)是CCTA(英国国家计算机和电信局)于20世纪80年代末开发的一套IT服务管理标准库,它把英国各个行业在IT管理方面的最佳实践归纳起来 ...
- 关闭EXCEL进程
//导入Windows类库,可以获得进程ID [DllImport("User32.dll", CharSet = CharSet.Auto)] pub ...
- 【leetcode】Unique Binary Search Trees
Unique Binary Search Trees Given n, how many structurally unique BST's (binary search trees) that st ...
- mysql备份与还原
一.直接拷贝数据库文件 直接拷贝数据库文件一般是使用文件系统备份工具cp,适合小型数据库,是最可靠的. 当你拷贝数据库文件时,必须保证表没有正在使用.如果服务器在你拷贝一个表的时候改变这个表,拷贝就失 ...
- VC++ 之常见内存异常值
0 VC++ 常见的内存异常值 * 0xcccccccc : Used by Microsoft's C++ Debugging runtime library to mark uninitialis ...
- JS 基本语句
1.循环中必备的条件: 初始值 循环条件 状态改变 循环体 for(初始值 循环条件 状态改变) { 循环体 } for(var i=0;i<100;i++ ...
- sqlserver insert 存储过程
-- 根据表中数据生成insert语句的存储过程Create Proc proc_insert (@tablename varchar(256)) as ...