怎么写求整型数组A[n]第k个最小元素 有没有简单点的 孩子要考试了
最简单的就是从小到大排序之后取数组第k个元素就行了
要减少循环新次数可以只把前k个元素序好即可
你题目的解答代码如下:
#include<stdio.h>
#include<string.h>
void main()
{
int n,k,i,j;
printf("请输入数组长度:");
scanf("%d", &n);
printf("请输入%d个数组元素:",n);
int a[n];
for( i=0; i<n; i++ )
scanf("%d", &a[i]);
printf("请输入k:");
scanf("%d", &k);
for(i=0;i<k;i++)
for(j=i+1;j<n;j++)
if(a[i] > a[j])
{
int t = a[j];
a[j] = a[i];
a[i] = t;
}
for(i=0;i<n;i++)
printf("%d ", a[i]);
printf("\n第%d个最小元素是:%d",k, a[k-1]);
}
如有帮助,望采纳!谢谢!
从小到大排序就好了啊。然后A[k]就是了
Arrays.sort(数组名字);
return 数组名字[K-1];