STL常用容器使用

题目描述:

编写一个C++程序, 建立整数向量V、整数队列Q、整数栈S1、S2;输入若干整数, 0作为输入结束; 将负整数依次保存在向量V中;将正整数中的素数保存在队列Q中; 将正整数中的偶数保存在栈S1中; 将正整数中的奇数保存在栈S2中;最后依次分别将保存在V、Q、S1、S2容器中的整数输出,以’\t’作为分隔; 每个容器中整数输出后换行。

输入描述:

输入若干整数, 0作为输入结束;

输出描述:

每个容器中整数输出后换行。向量容器按顺序输出,队列按出队列次序输出,栈按出栈次序输出

输入样例:

2 5 8 -2 -4 10 -6 9 11 0

输出样例:

-2 -4 -6
2 5 11
10 8 2
11 9 5
——————————————————————————————————————

分析:

队列,向量和栈的基本应用

代码:

#include <iostream>
#include <vector>
#include <queue>
#include <stack>
using namespace std;


bool prime(int n)
{
    if (n < 2) return false;

    for (int i=2;i<n/2;i++)
        if ((n%i)==0) return false;

    return true;
}

int main()
{
    vector<int> V;
    queue<int> Q;
    stack<int> S1, S2;
    int parameter;

    cin >> parameter;
    while ( parameter!=0 )
    {
        //负数
        if (parameter < 0)
            V.push_back(parameter);
        //正数
        else
        {
            //素数
            if (prime(parameter))
                Q.push(parameter);

            ((parameter%2) == 1) ? S2.push(parameter) : S1.push(parameter) ;
        }
        cin >> parameter;
    }
        for(int i =0;i < (int)V.size();i++)
            cout << V[i] << "\t";
        cout << endl;

        while(!Q.empty())
        {
            cout << Q.front() << "\t";
            Q.pop();
        }
        cout << endl;

        while(!S1.empty())
        {
            cout << S1.top() << "\t";
            S1.pop();
        }
        cout << endl;

        while(!S2.empty())
        {
            cout << S2.top() << "\t";
            S2.pop();
        }
        cout << endl;



    return 0;
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,981评论 18 399
  • java笔记第一天 == 和 equals ==比较的比较的是两个变量的值是否相等,对于引用型变量表示的是两个变量...
    jmychou阅读 5,403评论 0 3
  • *面试心声:其实这些题本人都没怎么背,但是在上海 两周半 面了大约10家 收到差不多3个offer,总结起来就是把...
    Dove_iOS阅读 27,382评论 30 472
  • 小编费力收集:给你想要的面试集合 1.C++或Java中的异常处理机制的简单原理和应用。 当JAVA程序违反了JA...
    八爷君阅读 10,195评论 1 114
  • 2013年12月17日,一加科技成立;2014年04月23日,首代一加手机发布;2014年12月01日,北京·蓝色...
    键人银翼阅读 3,226评论 1 4