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,请把这三 ...
随机推荐
- 添加Mysql到Windows系统服务
下载了免安装版的MySQL后,将压缩包加压.到这一步mysql还不能工作,我们还需要做一些工作: 1. 安装mysql服务 新建一个批处理文件StartMysql.bat,文件内容如下: @E ...
- 25 BasicUsageEnvironment0基本使用环境基类——Live555源码阅读(三)UsageEnvironment
25 BasicUsageEnvironment0基本使用环境基类——Live555源码阅读(三)UsageEnvironment 25 BasicUsageEnvironment0基本使用环境基类— ...
- 11.8---维护x的秩(CC150)
思路:比较easy.就是借助hashset让他有序然后就能够比较节省时间了. 答案: public static int[] getRankOfNumber(int[] a, int n){ int[ ...
- 转:SQL子句的执行顺序
SQL 不同于与其他编程语言的最明显特征是处理代码的顺序.在大数编程语言中,代码按编码顺序被处理,但是在SQL语言中,第一个被处理的子句是FROM子句,尽管SELECT语句第一个出现,但是几乎总是最后 ...
- Oauth 2.0第三方账号登录原理图
百度.QQ等服务商
- 自动化监控利器-Zabbix
转自: http://www.xuliangwei.com/xubusi/117.html 1.1为何需要监控系统 在一个IT环境中会存在各种各样的设备,例如:硬件设备.软件设备.其系统的构成也是 ...
- 【GoLang】50 个 Go 开发者常犯的错误
1. { 换行: Opening Brace Can't Be Placed on a Separate Line 2. 定义未使用的变量: Unused Variables 2. import ...
- Androidmanifest之manifest标签详细介绍
http://www.haogongju.net/art/2094337 文档下载
- MySQL 5.6 Threadpool(优先队列)介绍及性能测试【转】
本文来自:http://www.gpfeng.com/?p=540&utm_source=tuicool&utm_medium=referral 背景介绍 MySQL常用(目前线上使用 ...
- Effective C++ -----条款27:尽量少做转型动作
如果可以,尽量避免转型,特别是在注重效率的代码中避免dynamic_casts.如果有个设计需要转型动作,试着发展无需转型的替代设计. 如果转型是必要的,试着将它隐藏于某个函数背后.客户随后可以调用该 ...