题解 | #明明的随机数#
明明的随机数
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; }