c语言数据结构作业

作业代码

运行结果

  • 4
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
根据提供的引用内容,可以看出C语言数据结构作业需要完成以下任务: 1. 定义结构体studentInformation,用来存储学生的信息,包括学生的名字、班级、学号、学生的数据库成绩、高数成绩、C语言成绩、学生总分。 2. 构造一个空表,定义顺序表的存储结构和实现。 3. 实现对学生信息的增删改查等操作。 下面是一个简单的C语言数据结构作业的例子,仅供参考: ```c #include <stdio.h> #include <stdlib.h> #include <string.h> #define MAX_SIZE 100 typedef struct studentInformation { char student_name[20]; char student_class[10]; int student_number; float student_mysql; float student_math; float student_C; float sum_grade; } information; typedef struct studentList { information data[MAX_SIZE]; int length; } list; void initList(list *L) { L->length = 0; } int insertList(list *L, int i, information e) { if (i < 1 || i > L->length + 1) { return 0; } if (L->length >= MAX_SIZE) { return 0; } for (int j = L->length; j >= i; j--) { L->data[j] = L->data[j - 1]; } L->data[i - 1] = e; L->length++; return 1; } int deleteList(list *L, int i) { if (i < 1 || i > L->length) { return 0; } for (int j = i; j < L->length; j++) { L->data[j - 1] = L->data[j]; } L->length--; return 1; } int searchList(list L, char *name) { for (int i = 0; i < L.length; i++) { if (strcmp(L.data[i].student_name, name) == 0) { return i + 1; } } return 0; } void displayList(list L) { printf("Name\tClass\tNumber\tMySQL\tMath\tC\tSum\n"); for (int i = 0; i < L.length; i++) { printf("%s\t%s\t%d\t%.2f\t%.2f\t%.2f\t%.2f\n", L.data[i].student_name, L.data[i].student_class, L.data[i].student_number, L.data[i].student_mysql, L.data[i].student_math, L.data[i].student_C, L.data[i].sum_grade); } } int main() { list L; initList(&L); information e; strcpy(e.student_name, "Tom"); strcpy(e.student_class, "Class 1"); e.student_number = 1001; e.student_mysql = 90; e.student_math = 80; e.student_C = 85; e.sum_grade = e.student_mysql + e.student_math + e.student_C; insertList(&L, 1, e); strcpy(e.student_name, "Jerry"); strcpy(e.student_class, "Class 2"); e.student_number = 1002; e.student_mysql = 85; e.student_math = 90; e.student_C = 95; e.sum_grade = e.student_mysql + e.student_math + e.student_C; insertList(&L, 2, e); displayList(L); deleteList(&L, 1); displayList(L); int index = searchList(L, "Jerry"); if (index != 0) { printf("Jerry's information is:\n"); printf("Name\tClass\tNumber\tMySQL\tMath\tC\tSum\n"); printf("%s\t%s\t%d\t%.2f\t%.2f\t%.2f\t%.2f\n", L.data[index - 1].student_name, L.data[index - 1].student_class, L.data[index - 1].student_number, L.data[index - 1].student_mysql, L.data[index - 1].student_math, L.data[index - 1].student_C, L.data[index - 1].sum_grade); } return 0; } ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值