-!
C语言程序设计
请编写函数fun,其功能是:找出2M整型二维数组中最大元素的值,并将此值返回调用函数。
int fun (int a[][M])
{
int i,j,max=a[0][0];
for(i=0;i<2;i++)
for(j=0;j
=eps) /*当某项大于精度要求时,继续求下一项*/
{s1=s1*n/(2*n+1); /*求多项式的每一项*/
s=s+s1; /*求和*/
n++;
}
return 2*s;
}
编写函数fun,其功能是:求出1~1000之间能被7或11整除,但不能同时被7和11整除的所有整数,并将其放在a所指的数组中,通过n返回这些数的个数。
void fun (int *a, int *n)
{
int i,j=0;
for(i=1;i<=1000;i++) /*求1到1000之内能被7或11整除、但不能同时被7和11整除的所有整数,并放入数组a中*/
if((i%7==0||i%11==0)&&i%77!=0)
a[j++]=i;
*n=j;
}
规定输入的字符串中只包含字母和*号。编写函数fun,其功能是:删除字符串中所有的*号。编写函数时,不得使用C语言提供的字符串函数。
例如,字符串中的内容为:****A*BC*DEF*G*******,删除后字符串中的内容应当是:ABCDEFG。
void fun( char *a )
{
int i,j=0;
for(i=0;a[i]!=\0;i++)
if(a[i]!=*)
a[j++]=a[i]; /*若不是要删除的字符*则留下*/
a[j]=\0;
}
规定输入的字符串中只包含字母和*号。编写函数fun,其功能是:将字符串中的前导*号全部删除,中间和尾部的*号不删除。
例如,字符串中的内容为:"*******A*BC*DEF*G****",删除后字符串中的内容应当是:"A*BC*DEF*G****"。编写函数时,不得使用C语言提供的字符串函数。
void fun( char *a )
{
char *p=a;
while(*p==*) p++; /*指针p指向字符串第一个字母*/
for(;*p!=\0;p++,a++)
*a=*p; /*从第一个字母开始,其后的字符都放入指针a所指的字符串中*/
*a=\0; /*在字符串最后加上字符串结束标识*/
}
假定输入的字符串中只包含字母和*号。请编写函数fun,其功能是:除了尾部的*号之外,将字符中的其它的*号全部删除。形参p已指向字符串中最后的一个字母。在编写函数时,不得使用C语言提供的字符串函数。
例如,字符串中的内容为****A*BC*DEF*G*******,删除后,字符串中的内容应当是ABCDEFG*******。
void fun( char *a, char *p )
{
char *t=a;
for(;t<=p;t++)
if(*t!=*)
*(a++)=*t;
for(;*t!=\0;t++)
*(a++)=*t;
*a=\0;
/*在字符串最后加上字符串结束标识*/
}
规定输入的字符串中只包含字母和*号。请编写函数fun,其功能是:只删除字符前导和尾部的*号,串中字母间的*号都不删除。形参n给出了字符串的长度,形参h给出了字符串中前导*号的个数,形参e给出了字符串中尾部*号的个数。在编写函数时,不得使用C语言提供的字符串函数。
例如,字符串中的内容为:"****A*BC*DEF*G*******",删除后,字符串中的内容应当是:"A*BC*DEF*G"。
void fun( char *a, int n,int h,int e )
{
int i,j=0;
for(i=h;iave=0.0;
for(i=0;iave=a->ave+a->s[i]; /*求各门成绩的总和*/
a->ave/=N; /*求平均分*/
}
N名学生的成绩已在主函数中放入一个带头节点的链表结构中,h指向链表的头节点。请编写函数fun,其功能是:求出平均分,并由函数值返回。
例如,若学生的成绩是:85 76 69 85 91 72 64 87,则平均分应当是:78.625。
double fun( STREC *h )
{
double ave=0.0;
STREC *p=h->next;
while(p!=NULL)
{ ave=ave+p->s;
p=p->next;
}
return ave/N;
}
编写函数fun,其功能是:将所有大于1小于整数m的非素数存入xx所指数组中,非素数的个数通过k返回。
例如,若输入17,则应输出:4 6 8 9 10 12 14 15 16。
void fun( int m, int *k, int xx[] )
{
int i,j,n=0;
for(i=4;i=a&&*tt<=z)
pp[*tt-a]++;
}
编写函数fun,其功能是:比较字符串的长度,(不得使用C语言提供的求字符串长度的函数),函数返回较长的字符串。若两个字符长度相同,则返回第一个字符串。
例如,输入beijingshanghai(为回车键),函数将返回shanghai。
char *fun ( char *s, char *t)
{
int i,j;
for(i=0;s[i]!= \0;i++); /*求字符串的长度*/
for(j=0;t[j]!= \0;j++);
if(i<=j) /*比较两个字符串的长度*/
return t; /*函数返回较长的字符串,若两个字符串长度相等,则返回第1个字符串*/
else
return s;
}
学生的记录由学号成绩组成,N名学生的数据已放入主函数中的结构体数组s中,请编写函数fun,其功能是:函数返回该学号的学生数据,指定的学号在主函数中输入。若没找到指定学号,在结构体变量中给学号置空串,给成绩置-1,作为函数值返回。(用于字符串比较的函数是strcmp)。
STREC fun( STREC *a, char *b )
{int i;
STREC str={"\0",-1}; /*若没找到指定的学号,在结构体变量中给学号置空串,给成绩置-1*/
for(i=0;i=1e-6);
return x1;
}
学生记录由学号和成绩组成,N名学生的数据已放入主函数中的结构体数组中,请编写函数fun,其功能是:把分数最低的学生数据放入b所指的数组中,注意:分数最低的学生可能不止一个,函数返回分数最低的学生人数。
int fun( STREC *a, STREC *b )
{
int i,j=0,min=a[0].s;
for(i=0;ia[i].s)
min=a[i].s; /*找出最小值*/
for(i=0;is;
while(h!=NULL) /*通过循环找到最高分数*/
{if(maxs) max=h->s;
h=h->next;
}
return max;
}
请编写函数fun,其功能是:找出一维整型数组元素中最大的值及其所在的下标,并通过形参传回。数组元素中的值已在主函数中赋予。
主函数中x是数组名,n是x中的数据个数,max存放最大值,index存放最大值所在元素的下标。
void fun(int a[],int n, int *max, int *d)
{
int i;
*max=a[0];
*d=0;
for(i=0;i
展开阅读全文
相关搜索