题解 | #输入n个整数,输出其中最小的k个#

输入n个整数,输出其中最小的k个

http://www.nowcoder.com/practice/69ef2267aafd4d52b250a272fd27052c

思路

  1. 获取数据个数n和需要输出的个数k
  2. 获取需要排序的数据
  3. 从小到大排序
  4. 输出前k个数

题解

#include<stdio.h>
#include<string.h>

int main()
{
    

// 输入n个整数,找出其中最小的k个整数并按升序输出

// 本题有多组输入样例

// 数据范围:1≤n≤1000  ,输入的整数满足 1≤val≤10000 
    int n;
    int k;
    int val[1000];
    
    scanf("%d %d",&n, &k);
    for(int i=0; i<n; i++){
        scanf("%d",&val[i]);
    }
    for(int i=0; i<n; i++){
        
        for(int j=i+1; j<n; j++){
            
            if(val[i]>val[j]){
                int tmp = val[i];
                val[i] = val[j];
                val[j] = tmp;
            }
        }
    }
    for(int i=0; i<k; i++){
        printf("%d ",val[i]);
    }

    
// 输入描述:
// 第一行输入两个整数n和k
// 第二行输入一个整数数组

// 输出描述:
// 从小到大输出最小的k个整数,用空格分开。

// 示例1
// 输入:
// 5 2
// 1 3 5 7 2
// 复制
// 输出:
// 1 2
    return 0;
}
全部评论

相关推荐

不愿透露姓名的神秘牛友
10-12 10:48
已编辑
秋招之苟:邻居家老哥19届双2硕大厂开发offer拿遍了,前几天向他请教秋招,他给我看他当年的简历,0实习实验室项目技术栈跟开发基本不沾边😂,我跟他说这个放在现在中厂简历都过不了
点赞 评论 收藏
分享
11-07 13:31
怀化学院 Java
勇敢牛牛不怕难:又疯一个
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务