- 1、本文档共50页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第8章结构体与共用体.
程序改错
/*下列给定程序中,函数fun的功能是:对N名学生的学习成绩,按从高到低的顺序找出前m(m=10)名学生,并将这些学生数据存放在一个动态分配的连续存储区中,此存储区的首地址作为函数值返回。
试题程序:*/
#include stdlib.h
#include string.h
#include stdio.h
#include malloc.h
#define N 10
typedef struct ss
{ char num[10];
int s;
} STU;
STU *fun(STU a[], int m)
{ STU b[N],*t;
int i, j,k;
/**********ERROR**********/
*t=calloc(m,sizeof(STU)); 【参考答案】t=calloc(m,sizeof(STU));
for(i=0;iN;i++) b[i]=a[i];
for(k=0;km;k++)
{ for (i=j=0;iN;i++)
if(b[i].sb[j].s) j=i;
/**********ERROR**********/
t[k].num=b[j].num; 【参考答案】t[k]=b[j];
t[k].s=b[j].s;
b[j].s=0;
}
return t;
}
outresult(STU a[],FILE *pf)
{ int i;
for(i=0;iN;i++)
fprintf(pf, No=%s Mark=%d\n , a[i].num, a[i].s);
fprintf(pf, \n\n );
}
void main()
{ STU a[N]={{ A01 ,81},{ A02 ,89},{ A03 ,66},{ A04 ,87},{ A05 ,77},
{ A06 ,90},{ A07 ,79},{ A08 ,61},{ A09 ,80},{ A10 ,71}};
STU *pOrder;
int i, m;
printf(*****THE RESULT*****\n);
outresult(a,stdout);
printf(\nGive the number of the students who have better score: );
scanf(%d,m);
while(m10)
{ printf(\nGive the number of the students who have better score: );
scanf(%d,m);
}
pOrder=fun(a,m);
printf(***** THE RESULT*****\n);
printf(The top :\n);
for(i=0;im;i++)
printf(%s %d\n,pOrder[i].num, pOrder[i].s);
free(pOrder);
}
/*下列给定程序的功能是:建立一个带头节点的单向链表,并用随机函数为各节点数据域赋值。函数fun的作用是求出单向链表节点(不包括头节点)数据域中的最大值,并且作为函数值返回。
试题程序: */
#include stdio.h
#include stdlib.h
typedef struct aa
{ int data;
struct aa *next;
} NODE;
fun (NODE *h)
{ int max=-1;
NODE *p;
/**********ERROR**********/
p=h; 【参考答案】p=h-next;
while(p)
{ if(p-datamax)
max=p-data;
/**********ERROR**********/
p-next=h; 【参考答案】p=p-next;
}
return max;
}
outresult(int s, FILE *pf)
{ fprintf(pf, \nThe max in link :%d\n,s);
}
NODE *creatlink(int n, int m)
{ NODE *h,*p,*s;
int i;
h=p=(NODE *)malloc(sizeof(NODE));
h-data=9999;
for(i=1;i=n;i++)
{ s
您可能关注的文档
最近下载
- 铁路局招聘考试《铁路基础知识》100题及答案.docx
- 《QSY1237-2009-工艺和设备变更管理》.pdf
- 期末复习专项训练【实验题】(试题)小学科学五年级上册 教科版.docx VIP
- 农旅融合:推进乡村振兴,实现双赢.docx VIP
- 技术标书技术方案(完整资料).pdf VIP
- 13G311-1:混凝土结构加固构造.pdf VIP
- DB21_T 1565-2015预应力混凝土管桩基础技术规程.pdf
- 夏季防暑降温施工方案_夏季防暑降温施工方案夏季防暑降温工作方案.pdf VIP
- 危重症患者口渴的护理PPT.pptx
- 八年级人教版物理下《12.2滑轮》一等奖优秀教学设计 .pdf VIP
文档评论(0)