严蔚敏版数据结构C语言版)参考答案第一至三章
第一章 绪论
1.16
void print_descending(int x,int y,int z)//按从大到小顺序输出三个数{ scanf("%d,%d,%d",&x,&y,&z); if(xy; //为表示交换的双目运算符,以下同 if(yz; if(xy; //冒泡排序 printf("%d %d %d",x,y,z);}//print_descending
1.17
Status fib(int k,int m,int &f)//求k阶斐波那契序列的第m项的值f{??int tempd;??if(k<2||m<0) return ERROR;??if(m
1.18
typedef struct{????????????? ???char *sport;??????????????? ?enum{male,female} gender; ????????????????char schoolname; //校名为'A','B','C','D'或'E'??????? ?????????char *result;?????????????? ??int score;????????????? ?} resulttype;
typedef struct{????????????? ???int malescore;????????????? ???int femalescore;????????????? ???int totalscore;????????????? ?} scoretype;
void summary(resulttype result[ ])//求各校的男女总分和团体总分,假设结果已经储存在result[ ]数组中{??scoretype score;??i=0;??while(result[i].sport!=NULL)??{????switch(result[i].schoolname)????{??????case 'A':????????score[ 0 ].totalscore+=result[i].score;????????if(result[i].gender==0) score[ 0 ].malescore+=result[i].score;????????else score[ 0 ].femalescore+=result[i].score;????????break;??????case 'B':????????score.totalscore+=result[i].score;????????if(result[i].gender==0) score.malescore+=result[i].score;????????else score.femalescore+=result[i].score;????????break;??????……????……????……????}????i++;??}??for(i=0;i<5;i++)??{????printf("School %d:\n",i);????printf("Total score of male:%d\n",score[i].malescore);????printf("Total score of female:%d\n",score[i].femalescore);????printf("Total score of all:%d\n\n",score[i].totalscore);??}}//summary
1.19
Status algo119(int a[ARRSIZE])//求i!*2^i序列