首页 > 其他分享 >每日打卡一小时(第三十三天)

每日打卡一小时(第三十三天)

时间:2023-05-24 20:33:53浏览次数:33  
标签:sort case ty int 每日 打卡 第三十三 display size

一.问题描述

对于输入的每一批数,按从小到大排序后输出。

一行输入为一批数,第一个输入为数据类型(1表示整数,2表示字符型数,3表示有一位小数的浮点数,4表示字符串,0表示输入结束),第二个输入为该批数的数量size(0<size<=10),接下来为size个指定类型的数据。

输出将从小到大顺序输出数据。

二.设计思路

注意函数模板的使用方式

三.代码实现

#include <iostream>
#include <string>
using namespace std;

template <class T>
void sort(T *a, int size)
{
    T t;
    for(int i=0;i<size;i++)
    {
        cin>>a[i];
    }
    for(int i=0;i<size-1;i++)//选择排序找最小值放到最前面
        for(int j=i+1;j<size;j++)
        {
          if(a[i]>a[j])
          {
              t=a[i];
               a[i]=a[j];
              a[j]=t;
          }
        }
}

template <class T>
void display(T* a, int size){
    for(int i=0; i<size-1; i++) cout<<a[i]<<' ';
    cout<<a[size-1]<<endl;
}
int main() {
     const int SIZE=10;
     int a[SIZE];
     char b[SIZE];
     double c[SIZE];
     string d[SIZE];
     int ty, size;
     cin>>ty;
     while(ty>0){
         cin>>size;
         switch(ty){
             case 1:sort(a,size); display(a,size); break;
             case 2:sort(b,size); display(b,size); break;
             case 3:sort(c,size); display(c,size); break;
             case 4:sort(d,size); display(d,size); break;
         }
         cin>>ty;
     }
      return 0;
}

 

标签:sort,case,ty,int,每日,打卡,第三十三,display,size
From: https://www.cnblogs.com/zhenaifen/p/17429419.html

相关文章

  • 打卡第三十三天
    分数加法运算重载一、1.分数为0时,表示成0z1m,如果结果为负数,那么分子取负数,分母为正数二、三、#include<iostream>usingnamespacestd;classFS{private:intfz;intfm;public:FS(){}FS(intz,intm):fz(z),fm(m){}voidset(intx,inty){fz=x;......
  • 2023.5.24编程一小时打卡
    一、问题描述:已知Horse类是Pegasus类的父类,根据以下主函数完善程序内容,以实现规定的输出。不允许改变主函数的内容。intmain(){Horse*p1=newHorse;//输出:Horse申请了空间...Horse*p2=newPegasus;/*输出两行:Horse申......
  • 打卡
    1.问题:求两个正整数之间的最大公约数。2.思路:用暴击穷举法,简单粗暴地把1~y(前面已经假设x>y)都列出来分别判断是否为x、y的公约数,然后再找到其中最大的一个。3.程序流程图: 4.代码实现:#include<iostream>usingnamespacestd;intmain(){ intx,y; cin>>x>>y; intco......
  • 5月24日打卡
    例5-9常引用做形参 #include<iostream>#include<cmath>usingnamespacestd;classPoint{public:Point(intx=0,inty=0):x(x),y(y){}intgetX(){returnx;}intgetY(){returny;}friendfloatdist(constPoint&p1,constPoint......
  • 编程打卡:面向对象程序设计
    importjava.util.*;publicclassStaffManagementSystem{privatestaticList<Staff>staffList=newArrayList<>();publicstaticvoidmain(String[]args){Scannerscanner=newScanner(System.in);while(true){......
  • 5.24打卡
    #include<bits/stdc++.h>usingnamespacestd;classPoint{public:Point(intxx=0,intyy=0){x=xx;y=yy;}Point(Point&p);intgetX(){returnx;......
  • 5.24打卡
     3.程序流程图 4.代码实现#include<bits/stdc++.h>usingnamespacestd;main(){intx,y,z,num=0;printf("MenWomenChildren\n");for(x=0;x<=10;x++){y=20-2*x;z=30-x-y;if(3*x+2*y+z==50)......
  • 每日打卡1057
    给定一串长度不超过 105 的字符串,本题要求你将其中所有英文字母的序号(字母a-z对应序号1-26,不分大小写)相加,得到整数N,然后再分析一下N的二进制表示中有多少0、多少1。例如给定字符串 PAT(Basic),其字母序号之和为:16+1+20+2+1+19+9+3=71,而71的二进制是1000111,即有3个......
  • 【力扣每日一题】129. 求根到叶子节点数字之和
    不得不说,憨憨脑袋没有递归~~~1.题目描述2.题目分析题目意思很简单,遍历树的每一条路径,然后相加,返回最后结果思路一:DFS【每次看代码就秒懂,自己每次都想不到】:递递归归,莫有脑袋。每次递归加上从一开始的值思路二:BFS【个人最喜欢的】:维护两个队列,队列一存放root,队列二存放val,每次遍......
  • 【力扣每日一题】1207. 独一无二的出现次数
    没想到C#的修改value值,可以直接dis[key]=value进行修改~~~1.题目描述2.题目分析每个数字在数组中出现的次数是独一无二的思路一:桶排,看了看数据范围,挺小,可以桶排思路二:字典(HashMap),最后Value都是等于1的返回true3.题目代码publicstaticboolUniqueOccurrences(int[]arr)......