解题思路:
本题思路非常简单。
第一步: 把n个数导入到vector容器中。
第二步: 对输入的n个数进行排序。
排序:
sort(vec.begin(),vec.end());
sort(vec.rbegin(),vec.rend());
第三步: 输出排序后的前k个数。
可以使用迭代器进行输出:
for(vector<int>::iterator iter=vec.begin(); iter!=vec.end(); iter++)
{
cout<<*iter<<" ";
}
或者
for(int i=0; i<k; i++)
{
cout<<vec[i]<<" ";
}
注意事项:
参考代码:
#include <iostream> #include <algorithm> #include <vector> using namespace std; int main() { int n,k,data; vector<int> vec; cin>>n>>k; for(int i=0; i<n; i++) { cin>>data; vec.push_back(data); } sort(vec.begin(),vec.end()); for(int i=0; i<k; i++) { cout<<vec[i]<<" "; } return 0; }
0.0分
2 人评分
C语言训练-求1+2!+3!+...+N!的和 (C语言代码)浏览:2498 |
C语言程序设计教程(第三版)课后习题3.7 (C语言代码)浏览:746 |
C语言训练-计算一个整数N的阶乘 (C语言代码)浏览:982 |
C语言程序设计教程(第三版)课后习题9.8 (Java代码)浏览:1674 |
C语言训练-求PI* (C语言代码)浏览:637 |
2006年春浙江省计算机等级考试二级C 编程题(2) (C语言代码)浏览:503 |
C语言程序设计教程(第三版)课后习题5.6 (C语言代码)浏览:913 |
DNA (C语言代码)浏览:440 |
整除的尾数 (C语言代码)浏览:852 |
盐水的故事 (C语言代码)浏览:1602 |