结构体与程序化.doc_第1页
结构体与程序化.doc_第2页
结构体与程序化.doc_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1:某学生的记录由学号、8门课程成绩和平均分组成, 学号和8门课程的成绩已在主函数中给出,请编写函数fun,其功能是:求出该学生的平均分,并放入记录的ave成员中。void fun(STREC *a) int i;aave0.0;for(i0;iaveaaveasi;aaveaave/N;2:N名学生的成绩已在主函数中放入一个带头节点的链表结构中,h指向链表的头节点。请编写函数fun,其功能是:求出平均分,并由函数值返回。 double fun(STREC *h) double av0.0;STREC *phnext;while(p!NULL)avavps;ppnext;return av/N;3:学生的记录由学号和成绩组成,N名学生的数据已放入主函数中的结构体数组s中,请编写函数fun,其功能是:把分数最高的学生数据放在b所指的数组中。注意:分数最高的学生可能不止一个,函数返回分数最高的学生的人数。 int fun (STREC *a, STREC *b)int i,j0,maxa0s;for(i0;iN;i)if(maxais) maxais;for(i0;iN;i)if(maxais) bjai;return j;4:学生的记录由学号成绩组成,N名学生的数据已放入主函数中的结构体数组s中,请编写函数fun,其功能是:函数返回该学号的学生数据,指定的学号在主函数中输入。若没找到指定学号,在结构体变量中给学号置空串,给成绩置1,作为函数值返回。 STREC fun(STREC *a, char *b)int i;STREC str0,1;if(strcmp(ainum,b)0) strai;return str;5:学生的记录由学号和成绩组成,N名学生的数据已放入主函数中的结构体数组s中,请编写函数fun,其功能是:按分数降序排列学生的记录,高分在前,低分在后。 void fun (STREC a)int i,j;STREC t;for(i1;iN;i) /for(j0;jN1;j) if(ajsaj1s)taj;ajaj1;aj1t;6:学生的记录由学号和成绩组成。N名学生的数据已放入主函数中的结构体数组s中,请编写函数fun,其功能是:把高于等于平均分的学生数据放在b所指的数组中,高于等于平均分的学生人数通过形参n传回,平均分通过函数值返回。 double fun (STREC *a,STREC *b, int *n) int i;double av0.0;*n0;for(i0;iN;i)avavais;avav/N;for(i0;iN;i) if(avs;while(h!NULL)if(maxs) maxhs; hhnext;return max;8:学生记录由学号和成绩组成,N名学生的数据已放入主函数中的结构体数组中,请编写函数fun,其功能是:把分数最低的学生数据放入b所指的数组中,int fun(STREC *a,STREC *b) int i,j0,n0,min;mina0s;for(i0;iN;i) if(aismin)minais; for(i0;iN;i) if(aismin) *(bj)ai;j;n; return n;9:学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,编写fun ,功能是:把低于平均分的学生数据放入b所指的数组中,低于平均分的学生人数通过形参n传回,平均分通过函数值返回。 double fun(STREC *a, STREC *b, int *n) int i,j0;double av0.0; for(i0;iN;i) avavais;avav/N;for(i0;iN;i) if(aisav) bjai; *nj;return av;10:学生的记录由学号和成绩组成,N名学生的数据已放入主函数中的结构体数组s中,请编写函数fun,其功能是:把指定分数范围内的学生数据放在b所指的数组中,分数范围内的学生人数由函数值返回 int fun (STREC *a, STREC *b, int l, int h )int i,j0;for(i0;il&aish) bjai;return j;11:已知学生的记录由学号和学习成绩构成,N名学生的数据已存入a结构体数组中。请编写函数fun,函数的功能是:找出成绩最低的学生记录,通过形参返回主函数fun(STU a, STU *s)int i;*sa0;for(i0;isais) *sai;12已知学生的记录由学号和学习成绩构成,N名学生的数据已存入a结构体数组中。请编写函数fun,该函数的功能是:找出成绩最高的学生记录,通过形参返回主函数fun(STU a, STU *s) int i;*sa0;for(i0;is=eps) s1=s1*n/(2*n+1); s=s+s1; n+;return 2*s;2请编写函数fun,函数的功能是:移动一维数组中的内容,若数组中有n个整数,要求把下标从0-p的数组元素平移到数组的最后。int x,j,ch; for(x=0;x=p;x+)ch=w0;for(j=1;jn;j+) wj-1=wj;wn-1=ch; 3请编写函数fun,该函数的功能是:移动字符串中的内容,移动的规则是把第1m个字符,平移到字符串的最后,把第m+1到最后的字符移到字符串的前部。int i,j; char t;for(i=1;i=m;i+) t=w0; for(j=1;wj!=0;j+) wj-1=wj;wj-1=t; 4请编写函数fun,该函数的功能是:删除一维数组中所有相同的数,使之只剩一个。数组中的数已按从小到大的顺序排列,函数返回删除后数组中数据的个数。int i,j=1; for(i=1;in;i+)if(aj-1!=ai) aj+=ai;return j; 5请编写函数fun,其功能是:将一个数字字符串转换为一个整数(不得调用C语言提供的将字符串转换为整数的函数)long n=0;int flag=1;if(*p=-) p+;flag= -1;else if(*p=+) p+; while(*p!=0) n=n*10+*p-0; p+; return n*flag;6请编写函数fun,该函数的功能是:统计一行字符串中单词的个数,作为函数值返回。一行字符串在主函数中输入,规定所有单词由小写字母组成,单词之间有若干个空格隔开,一行的开始没有空格。int i,j=0; for(i=0;si!=0;i+) if(si!= &(si+1= |si+1=0) j+; return j7请编写函数fun,其功能是:计算并输出当x0.97时,如下多项式的值,直到|SnSn1|1e6);return sum;8请编写函数fun,其功能是:计算并输出给定数组(长度为9)中相邻两个元素的平均值的平方根之和。 double sum=0.0;int i,j=1;for(i=0;i9;i+)if(j=8)sum+=sqrt(xi+xi+1)/2.0);j+; return sum;9请编一个函数float fun,该函数的功能是对变量h中的值保留2位小数,并对第三位进行四舍五入long t; t=(h*1000+5)/10; return (float)t/10010. 请编写函数fun,该函数的功能是:判断字符串是否为回文,若是则函数返回1,主函数中输出YES,否则返回0,主函数中输出NO。回文是指顺读和倒读都一样的字符串。例如,字符串LEVEL是回文,而字符串123312就不是回文。int fun(char *s

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论