代码还不完整,排序就出现问题了,可以帮修改一下

代码还不完整,排序就出现问题了,想请您帮忙修改一下

//函数声明
#include 
#include 
#include 
void welcome();//欢迎界面
void PrimaryMenu();//进入页面,主菜单
void secondMenu();//功能菜单
void logon();//注册
void login();//登录
void get();//录入
void sort();//排序
//结构体,储存学生宿舍信息
#define N 9 //设定的所有信息的长度。之后修改所有的字符长度设定都应该与结构体的设定一样
struct student
{
    char name [N];//学生名字
    int  num1[N];//学号
    int  cla[N];//班级
    int  dorm[N];//宿舍编号
    char title[N];//宿舍名字
    int num2[N];//楼号
}stu[100]; 
//结构体,储存用户注册信息                         
struct user
{
    char username[20];
    char password[20];
}User;
//全局变量
    int sum=0;//学生总人数
//欢迎
void welcome()
{
    printf("\t|——————————————————|\n");
    printf("\t|------------------------------------|\n");
    printf("\t|----------高校学生管理系统----------|\n");
    printf("\t|************************************|\n");
    printf("\t|------------版本:V1.0--------------|\n");
    printf("\t|--------开发时间:2022/11/17--------|\n");
    printf("\t|------------------------------------|\n");
    printf("\t|——————————————————|\n");
}
//登陆菜单
void PrimaryMenu()
{
    printf("\n");
    printf("\t---------------1.注册-----------------\n");
    printf("\t---------------2.登录-----------------\n");
}
//功能菜单
void secondMenu()
{
    printf("------------------您的操作-------------------\n");
    printf("------------------a.导入---------------------\n");
    printf("------------------b.删除---------------------\n");
    printf("------------------c.查询---------------------\n");
    printf("------------------d.排序---------------------\n");
    printf("------------------e.修改---------------------\n");
}
//宿管注册
void logon()
{
    printf("请输入用户名:");
    scanf("%s",User.username);
    printf("请输入密码:");
    scanf("%s",User.password);
}
//登录
void login()
{
    int n=0;//记录登录次数
    char username[20],password[20];
    do 
    {
        printf("请输入用户名:");
        scanf("%s",username);
         printf("请输入密码:");
        scanf("%s",password);
        if ((strcmp(username,User.username))==0&&((strcmp(password,User.password))==0))
        {
                printf("    正在登陆,请稍等\n");
                printf("********************************\n");
                printf("登录成功!\n");
                break;
        }
        else 
        {
            printf("用户名名或密码错误(仅有三次机会)\n");
             printf("请重新输入用户名或密码.\n");
            n++;
        }
    }while(n<=3);
        if(n>3)
        {
            printf("登录失败!!!\n");
        }
}
//导入功能
void get()
{
    int i,j;//通过i循环录入,j是每次添加的学生人数
    int sum=0;//学生总人数struct student stu[100];
    printf("请输入录入学生人数(少于100人):");
    scanf("%d", &j);
    for(i=0;i//循环录入学生信息
    {
        printf("请输入第%d位学生学号:",i+1);
        scanf("%d", &stu[i].num1);
        printf("请输入第%d位学生姓名:",i+1);
        scanf("%s", stu[i].name);
        printf("请输入第%d位学生的班级:",i+1);
        scanf("%d",&stu[i].cla);
        printf("请输入第%d位学生的宿舍编号:",i+1);
        scanf("%d",&stu[i].dorm);
        printf("请输入第%d位学生的宿舍名字:",i+1);
        scanf("%s", stu[i].name);
        printf("请输入第%d位学生的楼号:",i+1);
        scanf("%d", &stu[i].num2);   
        printf("\n");
        sum++;
    }
    printf("系统中总共学生人数是%d\n",sum);
    printf("录入完成!\n");
}
void sort(int sum)//利用冒泡排序根据学号升序排列
{
int i,j,a;
struct  student t;
printf("请再次输入数字1或2\n");
printf("输入1排序,2退出\n");
scanf("%d",&a);
switch(a)
{
case 1:printf("按学生学号排序\n");
  for(i=0;i-1;i++)
  for(j=i+1;jif(stu[i].num1>stu[j].num1)
  {
  t=stu[i];
  stu[i]=stu[j];
   stu[j]=t;
  }
       }
for(i=0;iprintf("%d,%s,%d,%d,%d\n",stu[i].num1,stu[i].name,stu[i].cla,stu[i].dorm,stu[i].num2);}
case 2:printf("退出");break;
}
}
//主函数
int main()
{
    welcome();//欢迎
    PrimaryMenu();//进入页面
    logon();//注册
    login();//登录
    secondMenu();//功能菜单
    get();//录入
    sort(stu,sum);
    return 0;
}


可以看看这篇博客:http://t.csdn.cn/b9Kcg