新手题结构体输出 各位大佬能帮帮看哪里出错了么?
有3名学生,分别输入其姓名,性别(M/F)与学号(10位数)。并按照学号顺序排序后空格间隔输出。Xiaowang M 2020121212
Xiaomei F 2020121210
Xiaoli F 2020121211
我写的是这样的,能输入但输出不了任何东西。。有大佬能指点一下么?
#include <stdio.h>
#include <stdlib.h>
typedef struct student
{
char studentName[100];
char studentSex;
long studentID;
}STUDENT;
void Input(STUDENT stu[]);
void Print(STUDENT stu[]);
int main()
{
STUDENT stu[3];
int t,k,p;
Input(stu);
for(t=0;t<3;t++)
{
k=t;
for(p=t+1;p<=3;p++)
{
if(stu[t].studentID>stu[p].studentID)
{
k=p;
}
}
if(k!=t)
{
STUDENT o;
o=stu[k];
stu[k]=stu[t];
stu[t]=o;
}
}
Print(stu);
return 0;
}
void Input(STUDENT stu[])
{
int i;
for(i=0;i<3;i++)
{
scanf("%s %c%ld",stu[i].studentName,&stu[i].studentSex,&stu[i].studentID);
}
}
void Print(STUDENT stu[])
{
int j=0;
for(j=0;j<3;j++)
{
printf("%s %c%ld",stu[j].studentName,stu[j].studentSex,stu[j].studentID);
printf("\n");
}
}