下面程序的功能是输入10个数 找出最大值和最小值所在的位置 并把两者对调 然后输出调整后的10个

大学网课 已帮助 人

下面程序的功能是输入10个数,找出最大值和最小值所在的位置,并把两者对调,然后输出调整后的10个数。请填空使程序完整、正确。 #include <stdio.h> int main() { int a[10],max,min,i,j,k; for (i=0; i<10; i++) scanf("%d",&a[i]); max=min=a[0], j=k=0; for (i=0; i<10; i++) { if (a[i]<min) { min=a[i]; _____________;} if (a[i]>max) { max=a[i]; k=i;} } a[j]=max , a[k]=min; for (i=0; i<10; i++) printf("%d",a[i]); return 0; }

下面程序的功能是输入10个数 找出最大值和最小值所在的位置 并把两者对调 然后输出调整后的10个

热搜:下面程序的功能是输出数组s中最大元素

回答

共1条回复

  • ●试题四 prefix = o ns = 'urn:schemas-microsoft-com:office:office' / 【答案】 (1)k=0(2)a [ i ] >max(3)a [ i ] =max(4)a+i 或& a [ i ] (5)a , &n , pos 【解析】先分析 (4) 、 (5) 空。 (4) 空所在语句是从键盘中读入数据并存放在数组 a []之中,循环变量为 I 。 (4) 空处应填写存放地址,循环变量有两种表示方法,一种是 ' a+i ',另一种是'& a [ i ] '。 (5) 空处需要填写调用函数 fun() 的实参,从函数 fun() 的形参可以看出,第 1 个参数是要处理的数组 a [],第 2 个参数要返回的最大元素的个数 n ,第 3 个参数最大元素的下标数组 pos []。因此 (5) 空处应填写 ' a , &n , pos '。 再来分析 (1) ~ (3) 空。 (1) ~ (3) 空所在函数是找最大数,并将其下标存放在数组 pos []中,其实现的思路是先遍历一次数组,从数组中找出最大数 max ,再将遍历一次数组,依次将这些最大数的下标存放在数组 pos []中。 (2) 空所在的循环就是找最大数 max ,因此 (2) 空处应填写 ' a [ i ] >max '。 (3) 空所在的循环是将这些最大数的下标存放在数组 pos []中,因此 (3) 空处应填写 ' a [ i ] ==max '。 (1) 空应填写什么呢 ? 从语句 ' pos [ k ++] =i '和' *n=k '可知,变量 k 是用来指出当前要存放在数组 pos []中的位置,但这个变量要进行初始化,因此 (1) 空处应填写 ' k=0 '。