程序填空题:选择排序
本题要求采用选择法排序,将给定的n个整数从大到小排序后输出。
```c++
#include
# define MAXN 10
int main()
{
int i, index, k, n, temp;
int a[MAXN];
scanf("%d", &n);
for(i = 0; i < n; i++){
scanf("%d", &a[i]);
}
for(k = 0; k <@@[n-1](1); k++){
index = @@[k](1);
for(@@[i = k + 1;i < n; i++](1))
{
if(@@[a[i] > a[index]](1))
{
index = @@[i](1);
}
}
temp = a[index];
a[index] = a[k];
a[k] = temp;
}
for(i = 0; i < n; i++) {
printf("%d ", a[i]);
}
return 0;
}
```
答案:
第1空:n-1
第2空:k
第3空:i = k + 1;i < n; i++
第4空:a[i] > a[index]
第5空:i
```c++
#include
# define MAXN 10
int main()
{
int i, index, k, n, temp;
int a[MAXN];
scanf("%d", &n);
for(i = 0; i < n; i++){
scanf("%d", &a[i]);
}
for(k = 0; k <@@[n-1](1); k++){
index = @@[k](1);
for(@@[i = k + 1;i < n; i++](1))
{
if(@@[a[i] > a[index]](1))
{
index = @@[i](1);
}
}
temp = a[index];
a[index] = a[k];
a[k] = temp;
}
for(i = 0; i < n; i++) {
printf("%d ", a[i]);
}
return 0;
}
```
答案:
第1空:n-1
第2空:k
第3空:i = k + 1;i < n; i++
第4空:a[i] > a[index]
第5空:i