成绩管理系统的结构体
struct stu
{
char name[20];
int classes;
char num[13];
float score[4];
}stu[800];
按姓名或者是学号排序:
void mh(void)
{
int i,z,k;
for(i=1;i<=j;i++)
{
k=i;
printf("已执行1\n");
for(z=i+1;z<=j;z++)
{
if(strcmp(stu[i].name,stu[z].name)>0||strcmp(stu[i].num,stu[z].num)>0)
k=z;
printf("已执行2\n");
}
if(k!=i)
i=k;
printf("已执行3\n");
}
printf("姓名\t学号\t\t班级\t语文\t高数\t计算机\t英语\n");
for(i=1;i<=j;i++)
{
printf("%s\t%s\t",stu[i].name,stu[i].num);
printf("%d\t",stu[i].classes);
for(k=0;k<m;k++)
printf("%.2lf\t",stu[i].score[k]);
printf("\n");
}
printf("\n\n");
system("PAUSE");
paixu();
}
编译器检测没错误但是运行结果不对 不可以实现排序 求帮忙 在线等!!谢谢啦!!
struct stu
{
char name[20];
int classes;
char num[13];
float score[4];
}stu[800];
按姓名或者是学号排序:
void mh(void)
{
int i,z,k;
for(i=1;i<=j;i++)
{
k=i;
printf("已执行1\n");
for(z=i+1;z<=j;z++)
{
if(strcmp(stu[i].name,stu[z].name)>0||strcmp(stu[i].num,stu[z].num)>0)
k=z;
printf("已执行2\n");
}
if(k!=i)
i=k;
printf("已执行3\n");
}
printf("姓名\t学号\t\t班级\t语文\t高数\t计算机\t英语\n");
for(i=1;i<=j;i++)
{
printf("%s\t%s\t",stu[i].name,stu[i].num);
printf("%d\t",stu[i].classes);
for(k=0;k<m;k++)
printf("%.2lf\t",stu[i].score[k]);
printf("\n");
}
printf("\n\n");
system("PAUSE");
paixu();
}
编译器检测没错误但是运行结果不对 不可以实现排序 求帮忙 在线等!!谢谢啦!!