#include<iostream>
using namespace std;
//步骤一:
//定义结构体 
struct Student
{
    char name[20];  //姓名
    int num;   //学号
    float score;   //成绩
};
//步骤二:
//定义查找函数:
void Search(Student s1[], char name[20], int n)//查找该学生信息,n表示学生个数
{
    int flag = 0;  //flag=0表示未找到,flag=1表示找到该学生
    for (int i = 0; i < n; i++)
        if (strcmp(name, s1[i].name) == 0)  //用strcmp函数对字符串比较
        {
            flag = 1;// 表示找到该学生
            cout << "姓名:" << s1[i].name << "\t" << "学号:" << s1[i].num << "\t" << "分数:" << s1[i].score << "\n"; //输出该学生信息, .运算符输出
        }
    if (flag == 0)
    {
        cout << "不存在该学生信息" << endl;//不存在该学生信息
    }
}
int main()
{
    struct Student s1[] = {
        {"zhangsan",1,90},
        {"lisi",2,85},
        {"xiaoming",3,80},
        {"xiaohong",4,75},
        {"xiaogang",5,70}
    };   //定义Student结构体数组s1并初始化
    int length;   //学生个数
    char name[20];//存储要查找的学生姓名
    length = sizeof(s1) / sizeof(Student);
    cout<<"请输入要查找的学生姓名:"<< endl;
    cin >> name;        //输入学生姓名
    for (int n = 0; n < 5; n++)
    {
        Search(&s1[n], name, length);//调用查找函数Search输出学生信息
        break;//结束当前正在执行的for循环,防止重复输出函数
    }
    system("pause");
    return 0;
}
Last modification:December 5th, 2018 at 07:06 pm
如果觉得我的文章对您有帮助,请随意赞赏:)