zoukankan      html  css  js  c++  java
  • 机试题201702x--不定长数组的输入

    题目描述:

    输入n组数据,对每一组数据进行输入,排序后输出

    Input:

    2

    1 4 2 7 5

    8 9 4 3

    Output:

    1 2 4 5 7

    3 4 8 9

    如题,需要输入数据长度不定的数组,并对其进行排序

    解决方法:

    每次输入时,数据与数据之间用空格分隔,而cin并不读入空格,因此使用cin.get()方法,遇到非空格,即换行,就会停止输入数组

            while(cin>>a[i++])//cin不读空格制表符
            {
                c=cin.get();
                if(c!=32) break;
            }

    完整代码:

    #include<iostream>
    #include<algorithm>
    #define maxn 20
    using namespace std;
    
    int main(){
        int n,a[maxn],i,temp,c;
        cin>>n;
        while(n--)
        {
            i=0;
            while(cin>>a[i++])//cin不读空格制表符等
            {
                c=cin.get();
                if(c!=32) break;
            }
            //直接插入排序
            for(int m=1;m<i;m++)
            {
                for(int n=0;n<m;n++)
                {
                  if(a[n]>a[m])
                  {
                      temp=a[n];
                      a[n]=a[m];
                      a[m]=temp;
    
                  }
                }
            }
            for(int k=0;k<i;k++)
                cout<<a[k]<<" ";
            cout<<endl;
        }
        return 0;
    }
    View Code
  • 相关阅读:
    web安全
    WCF通信架构
    WCF地址
    WCFContracts(契约)
    分布式中的王者WCF
    SOAP 介绍
    诊所管理软件
    MFC 画图CDC双缓冲
    Linux 启动、关闭、重启网络服务
    C# 除法的小数点问题
  • 原文地址:https://www.cnblogs.com/helloworldToDu/p/12741424.html
Copyright © 2011-2022 走看看