帮忙解释一下代码!!!!
#include <stdio.h>#include<string.h>
struct student
{
char num[10];
int a;
int b;
int s;
}stu[100],t;
int main()
{
int i,n,j,c;
int row=0;
int k=1;
int month=1;
while(scanf("%d",&n)!=EOF)
{
for(i=1;i<=n;i++)
{
scanf("%s",stu[i].num);
scanf("%d %d",&stu[i].a,&stu[i].b);
stu[i].s=0;
}
for(i=1;i<n;i++)
{
for(j=i+1;j<=n;j++)
{
if(stu[j].a<stu[i].a)
{
t=stu[j];
stu[j]=stu[i];
stu[i]=t;
}
}
}/*对月份排序*/
i=1;
for(month=1;month<=12;month++)
{
c=0;
while(stu[i].a==month)
{
c++;
i++;
}/* ? */
for(i=1;i<c;i++)
{
for(j=i+1;j<=c;j++)
{
if(stu[j].b<stu[i].b)
{
t=stu[j];
stu[j]=stu[i];
stu[i]=t;
}
}
}/*对日期排序*/
}
for(i=1;i<n;i++)
{
for(j=i+1;j<=n;j++)
{
if((stu[i].a==stu[j].a) && (stu[i].b==stu[j].b) && stu[i].s==0)
{
stu[i].s=++row;/* ? */
stu[j].s=row;/* ? */
printf("%d %d",stu[i].a,stu[i].b);
printf(" %s",stu[i].num);
printf(" %s",stu[j].num);
}
else if((stu[i].a==stu[j].a) && (stu[i].b==stu[j].b) && stu[i].s==row && stu[j].s==0)/* ? */
{
printf(" %s",stu[j].num);
stu[j].s=row;
}
}
if(k==row)
{
k++;
printf("\n");
}
}
}
}
看下/* ? */的什么意思。。。谢谢。