首页 > 编程语言 >C++STL函数

C++STL函数

时间:2023-08-26 10:05:01浏览次数:31  
标签:排序 函数 STL tax C++ else int code include

1、排序算法

描述 键盘输入 5 个整数,使用 vector 进行存储,使用 STL 排序算法对元素进行排序(从大到小),再使用 STL 遍历算法输出元素。(元素和元素之间使用空格隔开) 输入描述: 键盘输入 5 个整数 输出描述: 输出排序后的元素,元素和元素之间使用空格隔开。

#include <iostream>
#include <vector>
// write your code here......
#include<algorithm>
using namespace std;
void print(int x)
{
    cout<<x<<" ";
}
int main() {

    int num;
    vector<int> v;
    for (int i = 0; i < 5; i++) {
        cin >> num;
        v.push_back(num);
    }

    // write your code here......
    sort(v.begin(),v.end(),greater<int>());//greater函数是降序排序
    for_each(v.begin(),v.end(),print);

    return 0;
}

2、找到数组里的第k大数(C++)

描述 给出一个包含nn个整数的数组aa,使用vector存储。 用STL算法实现输出数组的第kk大数。 输入描述: 第一行两个整数n ,kn,k。(1\le k \le n)(1≤k≤n) 第二行nn个整数表示数组aa。 输出描述: 输出一个数表示答案。

#include<bits/stdc++.h>
using namespace std;
int main(){
	int n,k;
	vector<int>a;
	// write your code here......
	cin>>n>>k;
    int num;
    for(int i=0;i<n;i++)
    {
        cin>>num;
        a.push_back(num);
    }
    sort(a.begin(),a.end());//先从小到大排序
    cout<<a.at(k-1)<<endl;//at(n)返回第n个元素的引用,第k大的元素下标是k-1
	return 0;
}

3、个人所得税计算程序

#include <iostream>
// write your code here......
#include<algorithm>
#include<vector>
#include<iomanip>
using namespace std;

class Employee {

    private:
        string name;
        double salary;
    // write your code here......
    public:
    Employee(string name,double salary)
    {
        this->name=name,this->salary=salary;
    }
    string getName()
    {
        return name;
    }
    double getSalary()
    {
        return salary;
    }
};
bool cmp(Employee e1,Employee e2)
{
    return e1.getSalary()>e2.getSalary();//按薪水从大到小排序
}
void print(Employee& e)
{
    double tax=0.0;
    double t=e.getSalary()-3500;
    if(t>80000)
    {
        tax=t*0.45-13505;
    }else if(t>55000)
    {
        tax=t*0.35-5505;
    }else if(t>35000)
    {
        tax=t*0.3-2755;
    }else if(t>9000)
    {
        tax=t*0.25-1005;
    }else if(t>4500)
    {
        tax=t*0.20-555;
    }else if(t>1500)
    {
        tax=t*0.1-105;
    }else if(t>0)
    {
        tax=t*0.03;
    }else{
        tax=0.0;
    }
    cout<<fixed<<setprecision(1);
    cout<<e.getName()<<"应该缴纳的个人所得税是:"<<tax<<endl;
}
int main() {

    // write your code here......
    Employee e1("张三",6500);
    Employee e2("李四",8000);
    Employee e3("王五",100000);
    vector<Employee>v;
    v.push_back(e1);
    v.push_back(e2);
    v.push_back(e3);
    sort(v.begin(),v.end(),cmp);
    for_each(v.begin(),v.end(),print);//STL输出函数
    return 0;
}

标签:排序,函数,STL,tax,C++,else,int,code,include
From: https://blog.51cto.com/u_16200991/7240172

相关文章

  • 日期函数
      ......
  • 数值函数
      ......
  • 函数-字符串函数
      ......
  • 《C++》C11新特性--1
    1.原始字符串字面量R"(字符串)"constchar*str1="D:hello\world\test.txt";constchar*str2=R"(D:hello\world\test.txt)";std::cout<<"直接输出str:\t\t"<<str1<<std::endl;std::cout<......
  • SG函数
    \(\rmNOIP\)模拟赛考了\(\rmSG\)函数,于是来贺一发oi-wikiPart1:公平组合游戏\(\rmICG\)若一个游戏满足:由两名玩家交替行动在游戏进程的任意时刻,可以执行的合法行动与轮到哪名玩家无关不能行动的玩家判负则称该游戏为一个公平组合游戏经典的公平组合游戏有......
  • 字符串处理C++
    1、字符串连接题目描述不借用任何字符串库函数实现无冗余地接受两个字符串,然后把它们无冗余的连接起来。输入每一行包括两个字符串,长度不超过100。输出可能有多组测试数据,对于每组数据,不借用任何字符串库函数实现无冗余地接受两个字符串,然后把它们无冗余的连接起来。输出连接......
  • math---多元函数积分方法整理
    复习到了这里,解题方法有点多,脑子有点乱,遂整理一下一、常规的三重积分解法1、先一后二法:用x,y表示z2、先二后一法:用z表示x,y3、球形积分4、常用技巧对称性、轮换对称、换元法(补行列式),其中球形积分就是用到了换元的思想:二、第一型曲线积分第一型曲线积分主要解决......
  • OceanBase通过基表检索数据库中的函数索引
    其实通过dba_indexes这个视图也能检索出来,但是如果通过index_type来过滤性能会极差,实际效率会差很多,可能十几秒中才会出来结果,下面是通过基表视图跳过index_type来检索函数索引。 ......
  • 教你写出高质量函数,简单又实用
    在编写函数时,程序员通常需要遵循以下步骤进行:1、确定最佳的设计逻辑是编写函数时应该考虑的重要因素。这些因素包括设计合理的数据结构、算法和逻辑封装,并且还要考虑到用户的安全因素。挑战在于确保所设计的方案既满足客户需求,又能得到客户的认可,并且要在项目的时间范围内完成。2......
  • Go-函数
    1函数的概念在golang语言中为完成某一功能的程序指令(语句、代码)的集合称为函数;在golang中,函数分为自定义函数、系统函数2函数的基本语法func函数名(形参列表)(返回值类型列表){ 函数体 return返回值列表}//形参列表---表示函数的输入//函数体---为了实现某一功能......