学生管理系统(顺序表) 本是古典 何须时尚 2022-09-13 14:24 94阅读 0赞 # 题目 # **选择一种线性表实现方式(顺序表或单链表),实现如下线性表应用:** **要求:输入n个学生的信息(姓名,性别,学号,成绩),实现功能:** **功能1:查找某个学号为×××的学生;** **功能2:添加一名学生的信息(姓名,性别,学号,成绩);** **功能3:删除一名学号为×××的学生。** **功能4:计算所有学生的平均成绩** **功能5:修改学号为×××的学生的成绩。** # **代码** # #include<stdio.h> #include<stdlib.h> #define pr printf("%s %s %d %d\n",L->p[i].name,L->p[i].sex,L->p[i].number,L->p[i].score) #define sc scanf("%s %s %d %d",L->p[i].name,L->p[i].sex,&L->p[i].number,&L->p[i].score) typedef struct Student { char name[20]; char sex[10]; int number; int score; }student; typedef struct SqList { student *p; int length; }Node,*LinkList; LinkList init(); void show(LinkList L); int search(LinkList L); void del(LinkList L); void modify(LinkList L); void average(LinkList L); void add(LinkList L); void choose(); void order(LinkList L); int main() { LinkList L; L=init(); show(L); order(L); } LinkList init() { LinkList L; int n,i=0; L=(LinkList)malloc(sizeof(Node)); L->p=(student *)malloc(sizeof(student)); L->length=0;//长度为0 printf("初始化表格\n"); printf("请问你想添加多少条数据?\n"); scanf("%d",&n); printf("开始添加数据\n"); printf("姓名,性别,学号,成绩\n"); while(i<n) { sc; i++; } L->length=i; printf("\n信息录入结束\n"); return L; } void show(LinkList L) { int i=0; printf("\n展示表格信息\n"); printf("姓名,性别,学号,成绩\n"); while(i<L->length) { pr; i++; } printf("\n展示结束\n"); } int search(LinkList L) { int temp,i=0,f=0; printf("\n开始调用查找\n"); printf("输入要操作的学号\n"); scanf("%d",&temp); while(i<L->length) { if(L->p[i].number==temp) { f=1; printf("\n成功找到\n"); pr; break; } else i++; } if(!f) { printf("\n未找到该信息\n"); return -1;//表示出错 } return i;//返回目标的位置 } void del(LinkList L) { int temp,i=0,f=0,j; printf("\n开始删除\n"); i=search(L); for(j=i;j<L->length;j++) { L->p[j]=L->p[j+1]; } L->length--; printf("\n删除成功\n"); } void modify(LinkList L) { int temp,i=0,f=0; printf("开始修改"); i=search(L); printf("\n输入你要修改的成绩\n"); scanf("%d",&temp); L->p[i].score=temp; } void average(LinkList L) { int i=0,sum=0; for(;i<L->length;i++) sum+=L->p[i].score; printf("所有学生的平均成绩为%d",sum/L->length); } void add(LinkList L) { int i=L->length,temp=0; printf("\n开始添加\n"); printf("请输入你的数据\n"); printf("姓名,性别,学号,成绩\n"); sc;; L->length++; printf("添加完成\n"); } void choose() { printf("\n功能1:查找某个学号为×××的学生\n"); printf("功能2:添加一名学生的信息(姓名,性别,学号,成绩)\n"); printf("功能3:删除一名学号为×××的学生\n"); printf("功能4:计算所有学生的平均成绩\n"); printf("功能5:修改学号为×××的学生的成绩\n"); printf("功能6:展示信息\n"); printf("功能7:正常退出\n"); } void order(LinkList L) { int n; choose(); printf("请问你想选择的功能\n"); scanf("%d",&n); switch(n) { case 1: search(L);order(L);break; case 2: add(L);order(L);break; case 3: del(L);order(L);break; case 4: average(L);order(L);break; case 5: modify(L);order(L);break; case 6: show(L);order(L);break; case 7: exit(0);break; default:order(L); } } # **实现** # ![watermark_type_ZHJvaWRzYW5zZmFsbGJhY2s_shadow_50_text_Q1NETiBA546L6ZmI6ZSL_size_20_color_FFFFFF_t_70_g_se_x_16][] ![watermark_type_ZHJvaWRzYW5zZmFsbGJhY2s_shadow_50_text_Q1NETiBA546L6ZmI6ZSL_size_20_color_FFFFFF_t_70_g_se_x_16 1][] # 数据 # 3 东仔 男 20171041 100 西西 男 20171061 90 谢西 女 20171068 132 小西 男 20171051 321 [watermark_type_ZHJvaWRzYW5zZmFsbGJhY2s_shadow_50_text_Q1NETiBA546L6ZmI6ZSL_size_20_color_FFFFFF_t_70_g_se_x_16]: /images/20220828/6a0c14e74efc4bc69cf78022ee7cb2f6.png [watermark_type_ZHJvaWRzYW5zZmFsbGJhY2s_shadow_50_text_Q1NETiBA546L6ZmI6ZSL_size_20_color_FFFFFF_t_70_g_se_x_16 1]: /images/20220828/61d0c588596349109be9c4cfd368b490.png
相关 学生管理系统 学生管理系统 \include <stdio.h> \include <iostream.h> \include <string.h> \include <malloc 落日映苍穹つ/ 2022年09月18日 11:42/ 0 赞/ 194 阅读
相关 学生管理系统(顺序表) 题目 选择一种线性表实现方式(顺序表或单链表),实现如下线性表应用: 要求:输入n个学生的信息(姓名,性别,学号,成绩),实现功能: 功能1:查找某个学号为×××的 本是古典 何须时尚/ 2022年09月13日 14:24/ 0 赞/ 95 阅读
相关 学生管理系统 我现在是大一新生!这个系统我写了一个月。但是还是不是很好。但是我想着是我的第一个系统。我在写的时候发现我的删除功能不是很好的。还有就是在这个过程中我学会了再这里我学到了如何使用 比眉伴天荒/ 2022年08月26日 13:24/ 0 赞/ 178 阅读
相关 学生管理系统 注释:这个小的系统,主要体现了C语言的 “分而治之,代码重用” 也就是老师教函数时给我们说的最核心的思想。 主要吧,就是先在开始:定义后面要使用的函数,再定义一些全局变 冷不防/ 2022年08月09日 04:28/ 0 赞/ 140 阅读
相关 学生成绩管理系统顺序表实现 include<stdio.h> include<stdlib.h> define listSize 100 //学生信息结构体 我就是我/ 2022年07月16日 13:39/ 0 赞/ 166 阅读
相关 学生成绩管理系统链表实现 2016年7月11日18:02:51 链表的相关术语: 头结点:1.为什么需要头结点? 为了方便对链表的操作,因而需要头结点; 2.头结点 我就是我/ 2022年07月16日 13:38/ 0 赞/ 180 阅读
相关 学生成绩(顺序表) include<iostream> include<string> include<iomanip> include<windows Dear 丶/ 2022年06月07日 04:45/ 0 赞/ 153 阅读
相关 学生管理系统 1.用mysql先创建表 ![70][] ![70 1][] 2.先创建一个stu类, package com.stu.entity; pu 绝地灬酷狼/ 2022年05月11日 03:20/ 0 赞/ 314 阅读
相关 学生管理系统 import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.File; 短命女/ 2022年01月10日 15:25/ 0 赞/ 255 阅读
相关 学生管理系统 package 练习; import java.util.Scanner; import javax.swing.JOptionPa 红太狼/ 2021年12月18日 05:37/ 0 赞/ 330 阅读
还没有评论,来说两句吧...