1、 do scanf(%d,&xi); while (xi+!=0);%fn,fun(x);第2题学生花名册可以用结构体型链表存放。结构中包含成员学号(int xh)、姓名(char xm8)、性别(char sex)、班级号(int bj)、成绩(int cj),sex=m表示男学生,w为女学生,班级序号bj为1至9。该结构已用typedef定义为数据类型STUDENT。给定程序FILL0.C就建立了这样一个链表,函数ftotal()的功能是:统计各班的平均成绩。请改正函数ftotal中的错误,使它能计算出正确的结果。alloc.htypedef struct STUDENT long xh;
2、 char xm8; char sex; int bj; int cj; struct STUDENT * next;void ftotal(struct STUDENT *head,int a) struct STUDENT * p; int b9,i; p=head; for(i=0;ibj-1=p-cj; bp-bj-1=1; p=p-next; if (bi) ai=ai/bi; else ai=0;void finput(struct STUDENT *head) printf(nPlease nput the score of class %d the student %s :,p
3、-bj,p-xm);p-cj);struct STUDENT * fsetup() struct STUDENT *h,*p,*p1; h=NULL; p1=NULL; while(1) p=(struct STUDENT * )malloc (sizeof(struct STUDENT);%ld %s %c %dxh,p-xm,&sex,&bj); p-cj=0; if (p-xh=0) free(p); if (p1) p1-next=NULL; break; else if(h=0)h=p;p1=p; else p1-next=p; return h;print(struct STUDE
4、NT * head)%08ld,%-8s,%c,%1d,%3dnxm,p-sex,p-n struct STUDENT *h; int a9,i; h=fsetup(); print(h); finput(h); ftotal(h,a); for (i=0; if (ai) printf(The score of class %d is %dn,i+1,ai);第3题给定程序MODI1.C中函数fun的功能是:求广义菲玻那级数的第n项。1,1,1,3,5,9,17,31,. 项值通过函数值返回main()函数。若n=15,则应输出:2209。请改正函数fun中的语法错误,使它能计算出正确的结果
5、。long fun(int n) long a=1,b=1,c=1,d=1,k; For (k=4;k=n;k+) d=a+b+c; a=b;b=c;c=d return d; int n=15;The value is %ldn,fun(n); NONO();NONO()/*本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件*/ FILE *rf,*wf; int i,n; rf=fopen(gc01.in,r wf=fopen(gc01.outw10; fscanf(rf,%d,n); fprintf(wf,%ldn fclose(rf); fclose(wf);第4题给定程序FI
6、LL1.C中函数scmp的功能是比较两个给出的C字符串。按比较结果,函数将返回如下函数值: 若: s1=s2 返回0 s1s2 返回正值请改正函数scmp中的语法和逻辑错误,使它能计算出正确的结果。#include#define N 40scmp(char * s1,char * s2) while(*s1) if(s1!=s2) return (*s1-*s2) ; else (*s1)+; s2+; return ( *s1 ); char str1=china,str2=chiness,str3=,str4=chinaren;the result for compare %s and %
7、s is %dn,str1,str2,scmp(str1,str2);,str2,str3,scmp(str2,str3);,str1,str3,scmp(str1,str3);,str3,str4,scmp(str3,str4); char str1N,str2N;tk01.intk01.out3;%s %sstr1,&str2);%dn,scmp(str1,str2);第5题给定程序MODI2.C中函数fun的功能是:通过某种程度方式实现两个变量的值交换的操作,例如变量a中的值原为8,b中的值原为3,程序运行后变量a中的值为3,b中的值原为8。请改正函数fun中的错误,使它能计算出正确的结
8、果。int fun(int *x,int y) int t; t=x;x=y; return(y); int a=3,b=8;%d %dn,a,b); b=fun(&a,b);第6题给定程序FILL2.C中函数printd(int n)的功能是以十进制数形式打印出任int型数。请改正函数printd中的语法和逻辑错误,使它能计算出正确的结果。下面函数的功能是以十进制数形式打印出任int型数。请填入适当语句完善之。#includestdio.hprintd(int n) int i; if(n=2)&mcdata=x;next=head; return head;print(struct nod
9、e * head)data); struct node *h =NULL, *p,*p1; int a,i; a=rand()%1000; h=finsert(h,a);第9题给定程序MODI4.C中函数fun的功能是:读入一个整数m,计算如下公式的值。 t = 1- 例如:若输入5,则应输出 -0.283333。 请改正函数fun中的错误,使它能计算出正确的结果。 注意:double fun(int m) double t=1.0; for(i=2;=m; t=1.0-1/i; t; int m;n Please enter 1 integer numbers: scanf( m);n th
10、e result is %lfn,fun(m); int j,n;gc04.ingc04.out for (j=1;jdata s-data ) s=p; struct node *h =0, *p,*p1; p=(struct node * )malloc (sizeof(struct node);data=a; if(h=0)h=p; else p1-next=0 ; fmax(h,&p); if(p) printf(Max data is:第11题给定程序MODI5.C中函数fun的功能是:用于计算 S=f( (f(-1.0)+f(5.0) 的值。当程序正确时,函数值应为:2488.00
11、000。设double fun(double x) double y; If (x else q; p; p=(struct node * )malloc (sizeof(struct node); return p; struct node *h =NULL;Please input the delete node: scanf(a); h=fdelete(h,a);after delete the node is: int i,a; struct node *h =NULL,*p;gc05.in if (rf = NULL)数据文件gc05.in不存在! p=h; fprintf(wf, fscanf(rf,gc05.out第13题给定程序MODI6.C中函数fun的功能是:读入一个整数m,计算如下公式的值. s = 1-例如: 若输入5,则应输出0.783333。 int i,j=1; j; t=1.0/i; return t;nPlease enter 1 integer number:nThe result is %lfn/
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1