练习-编写函数在结构体数组中查找数组元素

第1关:编写函数在结构体数组中查找数组元素

任务描述
本关任务:定义学生结构体数据类型,从键盘输入一批学生的信息,编写函数在这批学生中查找某个设定的学生。

相关知识

结构体类型的数据比较,相比于基本数据类型要复杂一些,查找分两种情况来讨论:

1.按结构体某个成员的值进行查找,例如可以按学生姓名进行查找,在这批学生中查找是否有姓名为"zhangsan"的学生。如果找到,返回姓
2.按结构体所有成员是否相等进行查找,也就是要判断两个结构体变量是否相等,例如按学生完整信息进行查找,在这批学生中查找是否有符合条件学号:10030姓名:Lisan出生日期:2000-10-14成绩:92.5的学生。如果找到,返回他在数组中的序号;否则,返回0。

在查找过程中,要反复比较两个结构体数据是否相等,定义equal ()函数对所有结构体变量成员进行比较,如果相等返回1,否则返回0。函数定义如下:

int equal (STUDENT a, STUDENT b)
{// 如果a,b的所有成员值相等,返回1,否则返回0
if (a.num != b.num )
return 0;
else if ( strcmp( a.name, b.name ) != 0 )
return 0;
else if ( a.sex != b.sex )
return 0;
else if ( a. birthday .year != b. birthday.year )
return 0;
else if ( a. birthday . month!= b.

你可能感兴趣的:(Educoder实训,算法,数据结构,c++)