数据类型有关问题 不会~求

数据类型问题不会~求大虾求教了~~~谢谢数据类型[解决办法]/////////////////////////////////////////////

数据类型问题 不会~求大虾
数据类型有关问题  不会~求
求教了~~~谢谢 数据类型
[解决办法]


/////////////////////////////////////////////////////////////////////////////
// 如果是一个结构体估计楼主能搞定,现在是结构体里面又有了个结构体,可能楼主就有些疑惑了
// 本打算睡觉,想想我初学的时候也有个这种疑惑,所以...
// 本代码基于最简单的思路,其他的一些如:
// 循环输入可能带来的问题、数据合法性判断等就留给楼主去玩了
////////////////////////////////////////////////////////////////////////////
// 出生年月结构体,把原来的拆开,便于理解,合起来也一样。
typedef struct
{
int iYear;
int iMonth;

}ST_BIRTH;

// 学生基本信息结构体
typedef struct  
{
char id[6+1];// 学号
char name[20+1];// 姓名

ST_BIRTH stBirth;

}ST_STUDENTS;

int main() 
{  
printf("请输入学生基本信息:\n") ;

ST_STUDENTS stStudents;
memset( &stStudents, 0, sizeof(stStudents)) ;

ST_STUDENTS  stArr[2] = {0}; 

for ( int i=0; i<2; i++ )
{
scanf( "%s %s %d %d", &(stStudents.id), &(stStudents.name), &(stStudents.stBirth.iYear), &(stStudents.stBirth.iMonth));
stArr[i] = stStudents;
}


// 年龄的简单比较,只比较年份大小,如果需要更精确的比较,可以把日期化作比较数进行比较,比如化作UTC时间进行比较也可以
if( stArr[0].stBirth.iYear > stArr[1].stBirth.iYear)
{
printf("年龄较小者信息:%s %s %d %d\n", stArr[0].id, stArr[0].name, stArr[0].stBirth.iYear ,stArr[0].stBirth.iMonth );
}
else if( stArr[0].stBirth.iYear < stArr[1].stBirth.iYear)
{
printf("年龄较大者信息:%s %s %d %d\n", stArr[1].id, stArr[1].name, stArr[1].stBirth.iYear ,stArr[1].stBirth.iMonth );
}
else
{// 年龄相同输出
printf("年龄相同输出:\n");
for ( int i=0; i<2; i++ )
{
printf("%s %s %d %d\n", stArr[i].id, stArr[i].name, stArr[i].stBirth.iYear ,stArr[i].stBirth.iMonth );
}
printf("\n");
}

system("pause");
return 0; 
}