printf("%8s", data[i].name);
printf("%8.1lf", data[i].english); printf("%8.1lf", data[i].math);
printf("%10.1lf", data[i].computer); printf("%12.1lf", data[i].mark_ave); printf("%10.1lf", data[i].mark_tot); putchar('\n'); }
for (i =0; i < 80; i++) putchar('='); putchar('\n');
printf("按回车键继续."); getchar(); getchar(); }
/*--------------排序子程序------------*/ void sort(STUDENT *data, int len) {
int i,j,k; STUDENT temp;
for (i=0; i<len-1; i++) {
for (k=i, j=i+1; j<len; j++)
if (data[k].mark_ave > data[j].mark_ave) k=j; if (k != i) {
temp = data[i]; data[i] = data[k]; data[k] = temp; } } }
/*--------------------搜索子程序-----------------------*/ void find(STUDENT *data, int len) {
int find_no, result ; int i;
lab: result=0;
printf("%s\n", "请输入需要查找的学生的学号,退出当前菜单请输入 -1.");
scanf("%d", &find_no);
if (find_no == -1) return; /*exit the fine sub program*/ while( data[result].no != find_no && result < len) result ++; if (result >= len ) {
printf("%s\n", "未查询到相关信息"); goto lab;