文章
18
粉丝
0
获赞
3
访问
10.8k
在数据录入时进行处理:重复的数据不存储
#include<stdio.h>
#include<stdlib.h>
void select_sort(int* arr, int len) {
int min,temp;
for (int i = 0; i < len - 1; i++) {
min = i;
for (int j = i + 1; j < len; j++){
if (arr[min] > arr[j])
min = j;
}
temp = arr[min];
arr[min] = arr[i];
arr[i] = temp;
}
}
int main() {
int n, k,x,index,len = 0;//n、k、x为输入,index为重复标记,len为真实数组长度
scanf("%d", &n);
int* arr = (int*)malloc(sizeof(int) * n);
while (n > 0) {//输入n个数据
index = 1;
scanf("%d", &x);
//处理重复数据
for (int i = 0; i < len; i++) {
if (x == arr[i]) {
index = 0;
break;
}
}
if (index) //存储数据,记录长度
arr[len++] = x;
--n;
}
select_sort(arr, len);
scanf("%d", &k);
printf("%d", arr[k - 1]);
}
登录后发布评论
暂无评论,来抢沙发