学生XX码

 

姓名:张三
学号:201411111100002

 

《卷内目录表》

1、XXXXXXXXXXXXXXXXXXXXXXXXXXXXX

2、XXXXXXXXXXXXXXXXXXXXXXXXXXXXX

3、XXXXXXXXXXXXXXXXXXXXXXXXXXXXX

4、XXXXXXXXXXXXXXXXXXXXXXXXXXXXX

5、XXXXXXXXXXXXXXXXXXXXXXXXXXXXX

档号:2014-JX11-XXX-XXX

转载于:https://www.cnblogs.com/songxxu/p/4625553.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,根据你的要求,我为你提供一个简单的 C 语言实现,使用顺序表和二分查找算法实现学生信息的管理。以下是代示例: ```c #include <stdio.h> #include <stdlib.h> #include <string.h> // 定义课程信息结构体 typedef struct Course { char id[10]; char name[20]; int score; int credit; } Course; // 定义学生信息结构体 typedef struct Student { char id[10]; char name[20]; char gender; char dorm[20]; char phone[20]; Course courses[10]; int course_count; } Student; // 定义学生信息管理结构体 typedef struct StudentManager { Student students[100]; int student_count; } StudentManager; // 初始化学生信息管理结构体 void init(StudentManager *manager) { manager->student_count = 0; } // 添加学生信息 void add_student(StudentManager *manager, Student student) { manager->students[manager->student_count++] = student; } // 通过学号查找学生信息 Student *find_student_by_id(StudentManager *manager, char *id) { int left = 0, right = manager->student_count - 1; while (left <= right) { int mid = (left + right) / 2; int cmp = strcmp(manager->students[mid].id, id); if (cmp == 0) { return &manager->students[mid]; } else if (cmp < 0) { left = mid + 1; } else { right = mid - 1; } } return NULL; } // 输出学生信息 void print_student(Student *student) { printf("学号:%s 姓名:%s 性别:%c 宿舍号:%s 电话号:%s\n", student->id, student->name, student->gender, student->dorm, student->phone); printf("课程信息:\n"); for (int i = 0; i < student->course_count; i++) { Course course = student->courses[i]; printf("课程编号:%s 课程名称:%s 综合成绩:%d 实得学分:%d\n", course.id, course.name, course.score, course.credit); } printf("共修:%d科,实得总学分为:%d\n", student->course_count, get_total_credit(student)); } // 计算学生总学分 int get_total_credit(Student *student) { int total = 0; for (int i = 0; i < student->course_count; i++) { total += student->courses[i].credit; } return total; } int main() { // 初始化学生信息管理结构体 StudentManager manager; init(&manager); // 添加学生信息 Student s1 = {"1001", "张三", 'M', "101", "13512345678", {{"001", "语文", 90, 4}, {"002", "数学", 80, 3}}, 2}; add_student(&manager, s1); Student s2 = {"1002", "李四", 'F', "102", "13587654321", {{"001", "语文", 95, 4}, {"002", "数学", 85, 3}, {"003", "英语", 90, 3}}, 3}; add_student(&manager, s2); // 通过学号查找学生信息并输出 Student *s = find_student_by_id(&manager, "1001"); if (s != NULL) { print_student(s); } else { printf("未找到该学生\n"); } return 0; } ``` 这是一个简单的 C 语言实现,你可以根据自己的需要进行修改和扩展。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值