#include<stdio.h> void ft(int ff[],int m) {int j,min,p,t; /**********FILL************/ _____; for(j=1;j<m;j++) /**********FILL************/ if(min>ff[j]){min=ff[j];_____;} printf("\nmin=%d,p=%d\n",min,p); /**********FILL************/ t=ff[9];_____;ff[p]=t; printf("输出调换之后的数组:"); for(j=0;j<10;j++)printf("%d ",ff[j]); } main() {int a[10], i; for(i=0;i<10;i++) scanf("%d",&a[i]); for(i=0;i<10;i++) printf(" %d ",a[i]); ft(a,10);}
时间: 2023-07-23 11:09:26 浏览: 75
这段代码是一个查找数组中最小值并将其与数组最后一个元素交换的程序,您需要对其中的空白部分进行填写,以使程序能够正确运行。下面是我填好空白部分后的完整代码:
```
#include<stdio.h>
void ft(int ff[], int m) {
int j, min, p, t;
min = ff[0]; // 初始化最小值为数组第一个元素
p = 0; // 初始化最小值的下标为0
for(j = 1; j < m; j++)
if(min > ff[j]) {
min = ff[j]; // 更新最小值
p = j; // 更新最小值的下标
}
printf("\nmin=%d, p=%d\n", min, p);
t = ff[9]; // 将数组最后一个元素赋值给t
ff[9] = min; // 将最小值赋值给数组最后一个元素
ff[p] = t; // 将t赋值给最小值原来的位置
printf("输出调换之后的数组:");
for(j = 0; j < 10; j++)
printf("%d ", ff[j]);
}
int main() {
int a[10], i;
for(i = 0; i < 10; i++)
scanf("%d", &a[i]);
for(i = 0; i < 10; i++)
printf(" %d ", a[i]);
ft(a, 10);
return 0;
}
```
输入10个数后,程序会先输出这10个数,然后输出最小数的值和下标,最后输出调换后的数组。
阅读全文