题解 | #明明的随机数#

明明的随机数

https://www.nowcoder.com/practice/3245215fffb84b7b81285493eae92ff0

#include <stdio.h>
#include <stdlib.h>
#include <stdbool.h>

#define MAX_VAL 500

int main() {
    int n;
    //printf("请输入随机数的个数:");
    scanf("%d", &n);

    int arr[n]; // 存放随机数的数组
    bool exist[MAX_VAL + 1] = {false}; // 记录出现过的数字

    // 生成随机数,并输出
    //printf("生成的随机数为:\n");
    for (int i = 0; i < n; i++) {
        int val;
        scanf("%d",&val);
    //    int val = rand() % MAX_VAL + 1;
        arr[i] = val;
    //    printf("%d\n", val);
    }
    //printf("\n");

    // 去重
    //printf("去重后的结果为:\n");
    for (int i = 0; i < n; i++) {
        int val = arr[i];
        if (!exist[val]) {
            //        printf("%d ", val);
            exist[val] = true;
        }
    }
    //printf("\n");

    // 排序并输出
    //printf("从小到大排序的结果为:\n");
    for (int i = 1; i <= MAX_VAL; i++) {
        if (exist[i]) {
            printf("%d\n", i);
        }
    }
    //printf("\n");

    return 0;
}

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务