#include <iostream>

#include<vector>

#include<algorithm>


using namespace std;


int main(){

    int n,i;

vector<int> temp;

while(cin>>n && n>0 && n<1000)//如果条件写在这里就正确

{

    //if(n>0 && n<1000)continue;判断条件写在这里为啥就不行?

    

     if(n==1)

     {

     int a;

     cin>>a;

     cout<<a<<'\n'<<-1<<'\n';

     continue;

     }

    

     temp.clear();

    

     for(i=0;i<=n-1;i++)

     {

     int a;

     cin>>a;

     temp.push_back(a);

     }

    

     sort(temp.begin(),temp.end());

    

     cout<<*(temp.end()-1)<<'\n';

    

     for(vector<int>::iterator it=temp.begin();it!=temp.end()-1;it++)

     cout<<*it<<" ";

     cout<<'\n';

     }

    

        return 0;

}


点赞(0)
 

0.0分

0 人评分

C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:

一点编程也不会写的:零基础C语言学练课程

解决困扰你多年的C语言疑难杂症特性的C语言进阶课程

从零到写出一个爬虫的Python编程课程

只会语法写不出代码?手把手带你写100个编程真题的编程百练课程

信息学奥赛或C++选手的 必学C++课程

蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程

手把手讲解近五年真题的蓝桥杯辅导课程

评论列表 共有 1 条评论

5年前 回复TA
你要写在那里的话,只要一满足条件,执行continue,因为continue是跳过本次循环,所以后面的语句就不执行了那样当然错了。而写在while里面就不一样了,它只是判断是否满足条件,不会跳过本次循环,如果不满足while循环就结束了。