mark_tot=english+math+computer; pos = 0;
while ((data[pos].mark_ave < mark_ave) && (pos < *len) ) pos ++;
for (i = *len-1; i >= pos; i--) data[i+1] = data[i]; data[pos].no = no;
strcpy(data[pos].name, name); data[pos].english = english; data[pos].math = math;
data[pos].Programming = computer; data[pos].mark_ave = mark_ave; data[pos].mark_tot = mark_tot; (*len)++; goto lab; }
/*-------------删除子程序--------------*/ void delete_item(STUDENT *data, int *len) {
int no, i, pos; lab: pos=0;
printf("%s\n", "输入需要删除的学生的学号,退出当前菜单请输入-1.");
scanf("%d", &no); if (no == -1) return;
while( (data[pos].no != no) && (pos < *len) ) pos = pos +1; if (pos >= *len) {
printf("%s\n", "未找到需要删除的学生"); goto lab; }
else {
for (i = pos+1;i < *len; i++) data[i-1] = data[i]; *len = *len -1; if (*len == 0) {
printf("%s\n", "没有任何记录,请按回车键返回."); getchar(); getchar(); return; }
goto lab; } }