请在程序的下划线处填入正确的内容并把下划线删除, 使程序得出正确的结果。
注意:源程序存放在考生文件夹下BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
给定源程序:
#include
#include
struct student {
long sno;
char name[10];
float score[3];
};
void fun(struct student a[], int n)
{
/**********found**********/
__1__ t;
int i, j;
/**********found**********/
for (i=0; i<__2__; i++)
for (j=i+1; j
/**********found**********/
if (strcmp(__3__) > 0)
{t = a[i]; a[i] = a[j]; a[j] = t;}
}
main()
{struct student s[4]={{10001,"ZhangSan", 95, 80, 88},{10002,"LiSi", 85, 70, 78},{10003,"CaoKai", 75, 60, 88}, {10004,"FangFang", 90, 82, 87}};
int i, j;
printf("\n\nThe original data :\n\n");
for (j=0; j<4; j++)
{printf("\nNo: %ld Name: %-8s Scores: ",s[j].sno, s[j].name);
for (i=0; i<3; i++) printf("%6.2f ", s[j].score[i]);
printf("\n");
}
fun(s, 4);
printf("\n\nThe data after sorting :\n\n");
for (j=0; j<4; j++)
{printf("\nNo: %ld Name: %-8s Scores: ",s[j].sno, s[j].name);
for (i=0; i<3; i++) printf("%6.2f ", s[j].score[i]);
printf("\n");
}
}
解题答案:
/**********第一空**********/
struct student t;
/**********第二空**********/
for (i=0; i
/**********第三空**********/
if (strcmp(a[i].name,a[j].name) > 0)
******************************************
相关专题:
编辑推荐: