下载资源后端资源详情
StudentManageSystem-master.zip
大小:4.86MB
价格:34积分
下载量:0
评分:
5.0
上传者:2401_86268542
更新日期:2025-09-22

基于C语言开发的学生成绩管理系统

资源文件列表(大概)

文件名
大小
StudentManageSystem-master/
-
StudentManageSystem-master/README.md
14.97KB
StudentManageSystem-master/StudentManageSystem/
-
StudentManageSystem-master/StudentManageSystem/.vs/
-
StudentManageSystem-master/StudentManageSystem/.vs/StudentManageSystem/
-
StudentManageSystem-master/StudentManageSystem/.vs/StudentManageSystem/v16/
-
StudentManageSystem-master/StudentManageSystem/.vs/StudentManageSystem/v16/.suo
31KB
StudentManageSystem-master/StudentManageSystem/.vs/StudentManageSystem/v16/Browse.VC.db
5.23MB
StudentManageSystem-master/StudentManageSystem/.vs/StudentManageSystem/v16/ipch/
-
StudentManageSystem-master/StudentManageSystem/.vs/StudentManageSystem/v16/ipch/AutoPCH/
-
StudentManageSystem-master/StudentManageSystem/.vs/StudentManageSystem/v16/ipch/AutoPCH/215e20dca6177113/
-
StudentManageSystem-master/StudentManageSystem/.vs/StudentManageSystem/v16/ipch/AutoPCH/215e20dca6177113/STUDENTMANAGESYSTEM.ipch
3.25MB
StudentManageSystem-master/StudentManageSystem/.vs/StudentManageSystem/v16/ipch/AutoPCH/a6730596ebf88ad0/
-
StudentManageSystem-master/StudentManageSystem/.vs/StudentManageSystem/v16/ipch/AutoPCH/a6730596ebf88ad0/STUDENTMANAGESYSTEM.ipch
3.63MB
StudentManageSystem-master/StudentManageSystem/Debug/
-
StudentManageSystem-master/StudentManageSystem/Debug/StudentM.41E8BB15.tlog/
-
StudentManageSystem-master/StudentManageSystem/Debug/StudentM.41E8BB15.tlog/CL.command.1.tlog
782B
StudentManageSystem-master/StudentManageSystem/Debug/StudentM.41E8BB15.tlog/CL.read.1.tlog
4.45KB
StudentManageSystem-master/StudentManageSystem/Debug/StudentM.41E8BB15.tlog/CL.write.1.tlog
568B
StudentManageSystem-master/StudentManageSystem/Debug/StudentM.41E8BB15.tlog/StudentManageSystem.lastbuildstate
213B
StudentManageSystem-master/StudentManageSystem/Debug/StudentM.41E8BB15.tlog/link.command.1.tlog
1.34KB
StudentManageSystem-master/StudentManageSystem/Debug/StudentM.41E8BB15.tlog/link.read.1.tlog
3.04KB
StudentManageSystem-master/StudentManageSystem/Debug/StudentM.41E8BB15.tlog/link.write.1.tlog
636B
StudentManageSystem-master/StudentManageSystem/Debug/StudentManageSystem.exe
45.5KB
StudentManageSystem-master/StudentManageSystem/Debug/StudentManageSystem.ilk
392.28KB
StudentManageSystem-master/StudentManageSystem/Debug/StudentManageSystem.log
140B
StudentManageSystem-master/StudentManageSystem/Debug/StudentManageSystem.obj
39.47KB
StudentManageSystem-master/StudentManageSystem/Debug/StudentManageSystem.pdb
588KB
StudentManageSystem-master/StudentManageSystem/Debug/vc142.idb
51KB
StudentManageSystem-master/StudentManageSystem/Debug/vc142.pdb
84KB
StudentManageSystem-master/StudentManageSystem/StudentManageSystem.cpp
9.21KB
StudentManageSystem-master/StudentManageSystem/StudentManageSystem.h
785B
StudentManageSystem-master/StudentManageSystem/StudentManageSystem.sln
1.39KB
StudentManageSystem-master/StudentManageSystem/StudentManageSystem.vcxproj
6.06KB
StudentManageSystem-master/StudentManageSystem/StudentManageSystem.vcxproj.filters
1.04KB
StudentManageSystem-master/StudentManageSystem/StudentManageSystem.vcxproj.user
165B
StudentManageSystem-master/StudentManageSystem/appendix/
-
StudentManageSystem-master/StudentManageSystem/appendix/20190415_200358.mp4
824.3KB
StudentManageSystem-master/StudentManageSystem/appendix/20190415_200600.gif
567.2KB
StudentManageSystem-master/StudentManageSystem/appendix/StudentManageSystem.md
14.77KB
StudentManageSystem-master/StudentManageSystem/stuinfo.dat
92B
StudentManageSystem-master/demo.gif
567.2KB

资源内容介绍

二、系统功能系统功能介绍1.录入学生信息:用户可以自由输入学生信息到系统中。2.打印学生信息:格式化展示系统中的学生信息。3.保存学生信息:将系统中的学生信息保存到本地文档。4.读取学生信息:读取本地文档中的学生信息并显示。5.统计所有学生人数6.查找学生信息:根据用户给定的信息(学号)在系统中查找该学生的信息7.修改学生信息8.删除学生信息0.退出系统系统main函数,while循环在外,系统程序能够持续运行,switch判断语句进行功能选择与函数切换。int main() {while (1){//打印菜单Menu();//读取一个字符 整数,字符在内存中映射为ASCII码char ch = _getch();switch (ch){case '1'://1.录入学生信息InputStudent();break;case '2'://2.打印学生信息PrintStudent();break;case '3'://3.保存学生信息SaveStudent();
<h1>学生成绩管理系统</h1><h5>开发语言:C语言</h5><h5>开发工具:Visual Studio 2019</h5><h5>开发时间:2019.4.14</h5><h5>开发者:summer</h5>[一、系统使用展示](#1)[二、系统功能](#2)[三、菜单](#3)[四、录入学生信息](#4)[五、打印学生信息](#5)[六、保存学生信息](#6)[七、读取学生信息](#7)[八、统计所有学生人数](#8)[九、查找学生信息](#9)[十、修改学生信息](#10)[十一、删除学生信息](#11)[十二、退出系统](#12)[十三、出错](#13)<h3 id="1">一、系统使用展示</h3>![Alt](demo.gif)<h3 id="2">二、系统功能</h3>1. 系统功能介绍```1.录入学生信息:用户可以自由输入学生信息到系统中。2.打印学生信息:格式化展示系统中的学生信息。3.保存学生信息:将系统中的学生信息保存到本地文档。4.读取学生信息:读取本地文档中的学生信息并显示。5.统计所有学生人数6.查找学生信息:根据用户给定的信息(学号)在系统中查找该学生的信息7.修改学生信息8.删除学生信息0.退出系统```2. 系统main函数,while循环在外,系统程序能够持续运行,switch判断语句进行功能选择与函数切换。```Cint main() {while (1){//打印菜单Menu();//读取一个字符 整数,字符在内存中映射为ASCII码char ch = _getch();switch (ch){case '1'://1.录入学生信息InputStudent();break;case '2'://2.打印学生信息PrintStudent();break;case '3'://3.保存学生信息SaveStudent();break;case '4'://4.读取学生信息ReadStudent();break;case '5'://5.统计所有学生人数CountStudent();break;case '6'://6.查找学生信息FindStudent();break;case '7'://7.修改学生信息ChangeStudent();break;case '8'://8.删除学生信息DeleteStudent();break;case '0'://0.退出系统return 0;break;default:printf("输入有误,没有该功能\n\n");system("pause"); //暂停system("cls"); //清屏break;}}return 0;}```<h3 id="3">三、菜单</h3>1. 菜单显示```C//菜单void Menu() {printf("*************************************************\n");printf("*\t欢迎使用高校学生成绩管理系统V1.0\t*\n");printf("*\t\t请选择功能\t\t\t*\n");printf("*************************************************\n");printf("*\t\t1.录入学生信息\t\t\t*\n");printf("*\t\t2.打印学生信息\t\t\t*\n");printf("*\t\t3.保存学生信息\t\t\t*\n");printf("*\t\t4.读取学生信息\t\t\t*\n");printf("*\t\t5.统计所有学生人数\t\t*\n");printf("*\t\t6.查找学生信息\t\t\t*\n");printf("*\t\t7.修改学生信息\t\t\t*\n");printf("*\t\t8.删除学生信息\t\t\t*\n");printf("*\t\t0.退出系统\t\t\t*\n");printf("*************************************************\n");}```2. 打印菜单scanf()、getchar()输入后均需要按enter,而getch()不用```C//打印菜单Menu();//读取一个字符 整数,字符在内存中映射为ASCII码char ch = _getch();```<h3 id="4">四、录入学生信息</h3>1. 定义学生结构体、链表节点结构体```C//定义一个学生typedef struct tagStudent {char szName[20];//姓名char szSex[4];//性别int nAge;//年龄int nStuNo;//学号int nScore;//成绩}Student;//链表//节点typedef struct tagNode{Student stu;//学生信息struct tagNode* pNext;//指向下一个节点}Node;//创建头节点Node* g_pHead = NULL;//指向头节点```2. 利用学生结构体,以及链表操作输入学生信息```C//1.录入学生信息void InputStudent() {//创建一个人,在堆中分配内存Node* pNewNode = (Node*)malloc(sizeof(Node));//指针下一个指向空pNewNode->pNext = NULL;//查找链表的尾结点Node* p = g_pHead;while (g_pHead != NULL && p->pNext != NULL){p = p->pNext;}//把节点插到链表的尾节点if (g_pHead == NULL) {g_pHead = pNewNode;}else {p->pNext = pNewNode;}//录入学生信息printf("请输入学生姓名:\n");scanf_s("%s", pNewNode->stu.szName, sizeof(pNewNode->stu.szName));printf("请输入性别:\n");scanf_s("%s", pNewNode->stu.szSex, sizeof(pNewNode->stu.szSex));printf("请输入学生年龄:\n");scanf_s("%d", &pNewNode->stu.nAge);printf("请输入学号:\n");scanf_s("%d", &pNewNode->stu.nStuNo);printf("请输入成绩:\n");scanf_s("%d", &pNewNode->stu.nScore);printf("学生信息录入成功。\n\n");system("pause");system("cls");}```<h3 id="5">五、打印学生信息</h3>1. 读取链表结构,输出学生信息。先进行判空处理,如果无学生信息则输出提示信息,反之则正确输出学生信息。```C//2.打印学生信息void PrintStudent() {system("cls");//遍历链表Node* p = g_pHead;if (p == NULL) {printf("系统中暂无学生信息,请录入后再来打印查看。\n\n");}else {printf("*********************************************************************************\n");printf("*\t\t\t欢迎使用高校学生成绩管理系统V1.0\t\t\t*\n");printf("*********************************************************************************\n");printf("*\t学号\t*\t姓名\t*\t性别\t*\t年龄\t*\t成绩\t*\n");printf("*********************************************************************************\n");while (p != NULL){printf("*\t%d\t*\t%s\t*\t%s\t*\t%d\t*\t%d\t*\n",p->stu.nStuNo,p->stu.szName,p->stu.szSex,p->stu.nAge,p->stu.nScore);//下一个节点p = p->pNext;printf("*********************************************************************************\n");}}system("pause");system("cls");}```<h3 id="6">六、保存学生信息</h3>1. 利用文件对学生信息进行存储```C//3.保存学生信息void SaveStudent() {//打开文件FILE* pFile;pFile = fopen(".\\stuinfo.dat", "w");if (pFile == NULL) {printf("打开文件失败。\n");return;}//写入数据Node* p = g_pHead;while (p != NULL){fwrite(&p->stu, sizeof(Node), 1, pFile);p = p->pNext;}//关闭文件fclose(pFile);printf("数据保存成功。\n");system("pause");system("cls");}```2. fopen在vs中会报错,解决方式(1)按照vs的提示,将fopen换成fopen_s(2)不修改函数,仅仅修改项目的属性。因为fopen_s是一种Microsoft的函数,若纯做Windows开发则直接改为_s也无妨,但是我们尽量还是用标准C++比较好,这样代码有较好的移植性。具体操作:右键工程名–>属性–>C/C++–>预处理器–>预处理器定义,编辑右边输入框加入: _CRT_SECURE_NO_WARNINGS 保存(注意用分号隔开)。<h3 id="7">七、读取学生信息</h3>1. 打开存储学生信息的文本,单个单词读取,判断非分隔符或者空时则赋值给链表中的节点,读取完毕后,直接调用PrintStudent()函数进行打印结果。```C//4.读取学生信息void ReadStudent() {system("cls");//打开文件FILE* pFile;pFile = fopen(".\\stuinfo.dat", "r");if (pFile == NULL) {printf("打开文件失败。\n");return;}//创建一个人,在堆中分配内存Node* p = (Node*)malloc(sizeof(Node));p->pNext = NULL;//重新建立链表g_pHead = p;//逐个单词读入文本内容char str[200];int i = 0;while (fscanf(pFile, "%s", str) != EOF) { //读文件 //单词不是*或者空时,进行赋值if (strcmp(str, "*") && str != NULL) {switch (i){case 0:p->stu.nStuNo = atoi(str);break;case 1:strcpy(p->stu.szName, str);break;case 2:strcpy(p->stu.szSex, str);break;case 3:p->stu.nAge = atoi(str);break;case 4:p->stu.nScore = atoi(str

用户评论 (0)

发表评论

captcha

相关资源

frp 0.33.0(windows x86)

FRP(Fast Reverse Proxy)是一个开源、简洁易用、高性能的内网穿透和反向代理软件,支持TCP、UDP、HTTP、HTTPS等协议。它主要用于将内网服务暴露到公网,通过在具有公网IP的节点上部署服务端,可以轻松地实现内网服务的外网访问。FRP可以用于多种场景,例如:远程桌面访问:通过FRP将内网的远程桌面服务暴露到公网。文件共享:通过FRP实现内网文件共享服务的外网访问。SSH访问:通过FRP实现内网SSH服务的外网访问。

8.06MB41积分

无标题111111111111

11111111

99.27MB26积分

商品秒杀系统 JAVA+Vue.js+SpringBoot+MySQL

基于Vue.js和SpringBoot的商品秒杀系统,分为用户前台和管理后台,可以给管理员、普通用户角色使用,包括商品类型模块、商品信息模块、商品订单模块、用户管理模块和系统基础模块,项目编号T196。项目录屏:https://www.bilibili.com/video/BV1Bf421D7mv启动教程:https://www.bilibili.com/video/BV1pW4y1P7GR项目讲解视频:https://space.bilibili.com/417412814/channel/collectiondetail?sid=2242844

18.52MB10积分

医院预约挂号系统 JAVA+Vue.js+SpringBoot+MySQL

基于Vue.js和SpringBoot的医院预约挂号系统,分为用户前台和管理后台,可以给管理员、专家、会员角色使用,包括论坛管理模块、会员管理模块、专家管理模块、单页数据模块和系统基础模块,项目编号T198。项目录屏:https://www.bilibili.com/video/BV1nx4y1b7sU启动教程:https://www.bilibili.com/video/BV1pW4y1P7GR项目讲解视频:https://space.bilibili.com/417412814/channel/collectiondetail?sid=2242844

28.65MB36积分