下列给定程序中,函数fun的功能是:把形参a所指数组中的最小值放在元素a[o]中,接着把a_所指数组中的最大值放在a[1]元素中;再把a所指数组元素中的次小值放在a[2]中,把a所指数组元素中的次大值放在a[3],以此类推。
例如,若a所指数组中的数据最初排列为:9、1…4 2 3、6、5、8、7;则按规则移动后,数据排列为:1、9.2、8:3、7、4、6、5。形参13.中存放a所指数组中数据的个数。
规定fum函数中的max存放当前所找的最大值,px存放当前所找最大值的下标。请在程序的下划线处填人正确的内容并将下划线删除,使程序得出正确的结果。注意:部分源程序在文件BLANKl.C中。
不得增行或删行,也不得更改程序的结构!
第1题:
编写函数fun,其功能是:将s所指字符串中除了下标为奇数,同时ASCH码值也为奇数自q字符之外。
其余所有字符全部删除,串中剩余字符所形成的一个新串放在所指的数组中。
例如,若s所指字符串的内容为“ABCDEFGl2345”,其中字符A的ASCIl码值为奇数,但所在元素的
下标为偶数,因此需要删除;而字符l的ASCIl码值为奇数,所在数组中的下标也为奇数,因此不应当删除,
其他依此类推。最后t所指数组中的内容应为“135”。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
试题程序:
用循环遍历字符串,通过if语句将下标和ASCIl码都为奇数的字符保存到数组中,在字符串末尾加上结束标识符。
第2题:
函数fun()的功能是:逆置数组元素中的值。形参n给出数组中数据的个数。
例如:若a所指数组中的数据依次为:1、2、3、4、5、6、7、8、9,则逆置后依次为:9、8、7、6、5、4、3、2、1。
注意:部分源程序给出如下。
请勿改动main()函数和其他函数中的任何内容,仅在fun()函数的横线上填入所编写的若干表达式或语句。
试题程序:
【1】n/2【2】i【3】a[n-i-1]
【解析】fun()函数实现的功能是实现数组的逆置。具体步骤通过参数传递,得到数组指针(即数组名)和数组记录大小的变量n,通过这两个参数配置for循环,遍历数组的中间的元素位置,每次循环都将i位置和对应位置结点(i距离0位置等于其距离尾位置的结点)的元素交换,由此实现数组的逆置。
第3题:
请编写函数fun,参指针所指的4个整数中找出最大值和最小值,最大的放在a中,最小的放在d中。注意:部分源程序存在PROGl.C中,请勿改动主函数main和其他函数中的任何内容,仅在函数fun鸽花括号中填入所缩写的若干语句。给定源程序:
第4题:
下列给定程序中,函数proc()的功能是:按顺序给str所指数组中的元素赋予从2开始的偶数,然后再按顺序对每5个元素求一个平均值,并将这些值依次存放在w所指的数组中。若str所指数组中元素的个数不是5的倍数,多余部分忽略不计。例如,str所指数组有17个元素,则只对前15个元素进行处理,不对最后的2个元素求平均值。 程序执行结果为Theoriginaldata: 246810 1214161820 2224262830 3224 Theresult: 6.0016.0026.00 请修改函数proc()中的错误,使它能得出正确的结果。 注意:不要改动main()函数,不得增行或删行,也不得更改程序的结构。 试题程序:
第5题:
下列给定程序中,函数fun的功能是:把形参a所指数组中的奇数按原顺序依次存放到a [0][2] .....中,把偶数从数组中删除,奇数个数通过函数值返回。 例如:若a所指数组中的数据最初排列为:9、1、4,2、3、6、5、8、7,删除偶数后a所指数组中的数据为:9、1、 3、5、7,返回值为5。 请在下画线处填入正确的内容并将下画线删除,使程序得出正确的结果。 注意:部分源程序在文件BLANKl.C中。 不得增行或删行,也不得更改程序的结构!