请编写函数fun,其功能是求出数组的最大元素在数组中的下标并存放在k所指的存储单元。 int fun(int *s,int t,int *k) {
int i,pos=0,max=*s; for(i=1;i if(max<*(s+i)){ max=*(s+i); pos=i; }} *k=pos; } 第五十八套 1 程序填空 给定程序中,函数fun的功能是计算下式s=3/22-5/42 +7/62-…+(-1)n-1(2×n-1)/(2×n)2直到︱(2×n-1)/(2×n2)︱≤10-3并把计算结果作为函数值返回,例如:若形参e的值为-le-3,函数的返回值为0.551690。 第1处x=3.0/4; 第2处while(x>e) 第3处x=(2*i+1)/(t*t); 2 程序修改 给定程序MODI1.C中函数fun的功能是:求出以下分数序列的前n项之和。2/1,3/2,5/2,8/5,13/8,31/13…和值通过函数值返回到main函数。 /**found**/ double fun(int n) /**found**/ s=s+(double)a/b; 3 程序设计 请编写函数fun,它的功能是:求出一个2×M整型二维数组中最大元素的值,并将此值返回调有函数。 fun(int a[][M]) { int i,j,max=a[0][0]; for(i=0;i<2;i++) for(j=0;j 46 if(max 第五十九套 1 程序填空 函数fun的功能是:把形参a所指数组中的的最小值放在元素a[0],接着把形参a所指数组中的最大值放a[1]元素中;再把a所指数组中的次小值放在a[2]中,把a所指数组元素中的次大值放在a[3];其余以此类推。 第1处max=min=a[i]; 第2处if(maxa[j]) 2 程序修改 给定程序MODI1.C中函数fun的功能是:用递归算法计算列中第n项的值。从第一项起,斐波拉契数列为:1、1、2、3、5、8、13、21、 …… /**found**/ switch(g) /**found**/ case 1:return 1; case 2:return 1; 3 程序设计 某学生的记录由学号、8门课程和平均分组成,学号和8门课程成绩已在主函数中给出。请编写函数fun,它的功能是;求出该学生的平均分放在记录的ave成员中。 void fun(STREC *a) { int i; for(i=0;i a->ave=a->ave+a->s[i]; a->ave/=N } 第六十套 1 程序填空 给定程序中,函数fun的功能是:有N×N矩阵,以主对角线为对称线,对称元素相加并将结果存放在左下三角元素中,右上三角元素来。 第1处 void fun (int) (*t)[N] 第2处 t[i][j]=t[i][j]+t[j][i]; 47 第3处 t[j][i]=0; 2程序修改 给定程序MODI1.C中函数fun的功能是:计算函数值,F(x,y,z)=(x+y)/(x-y)+(z+y)/(z-y)其中x和y的值不等,z和y的值不等。例如,当x的值为9、y的值为11、z的值为15时,函数值为-3.50。 /**found**/ #define FU(m,n) ((m)/(n)) /**found**/ return (value); } 3程序设计 规定输入的字符串中只包含字母和*号。请编写函数fun ,它的功能是:将字符串中的前导*号全部删除,中间和尾部的*号不删除。 void fun (char *a) { int j=0; char *p=a; while (*p=='*')p++; while (*p){ a[j++]=*p; p++; } a[j]=0; } 第六十一套 1 程序填空 人员的记录由编号和出生年、月、日组成,N名人员的数据已在主函数中存入结构体数组std中。函数fun的功能是:找出指定出生年份的人员,将其数据放在形参k所指出的数组中,由主函数输出,同时由函数值返回满足指定条件的人数。 第1处if (std[i].year==year) 第2处 k[n++]=std[i]; 第3处 return (n); 2 程序修改 给定程序MODI1.C中函数fun的功能是:读入一个整数k(2≤k≤10000)打印它的所有质因 48 子(即所有为素数的因子)。 /**found**/ IsPrime (int n) /**found**/ if (!(n%i)) 3 程序设计 已知学生的记录由学号和学习成绩构成,N名学生的数据已存入结构体数组a中。请编写给函数fun,函数的功能是:找出成绩最高的学生的记录,通过形参指针传回主函数(规定只有一个最高分),已给出函数的首部,请完成函数。 fun(STU a[],STU *s) { int i, max = a[0]. s, j=0; for (i=1; i max =a[i].s; } *s=a[j]; } 第六十二套 1程序填空 给定程序中,函数fun的功能是:将N×N矩阵主对角线元素中的值与反向对角线对应位置上元素中的值进行交换。例如:若N=3有下列矩阵: 1 2 3 4 5 6 7 8 9 交换后: 3 2 1 4 5 6 49 9 8 7 第1处 void fun (int t [] [N], int n) 第2处 for (i=0; i 由N个有序整数组成的数列已放在一维数组中,给定程序MODI1.C中函数fun的功能是:利用折半查找算法查找整数m在数组中的位置。若找到,返回其下标值;反之,返回-1.折半查找的基本算法是:每次查找前先确定数组中待查的范围:low和high(low﹤high),然后把m的值大于中间位置元素中的值,则下一次的查找范围落在中间位置之前的元素中。直到low﹥high,查找结束。 /**found**/ fun (int a [], int m) /**found**/ else if (m>a [mid]) 3 程序设计 假定输入的字符串中只包含字母和*号,请编写函数fun,它的的功能是:除了尾部的*号之外,将字符串中其他*全部删除。形参p已指向字符串中最后一个字母。在编写函数时,不得使用C语言提供的字符串函数。 void fun (char *a,char *p) { char *q=a; int j=0; while (*q&&q while (*p) a [j++] = *p++; a [j]=0; } 第六十三套 50