iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > 其他教程 >基于C语言如何实现学生管理系统
  • 109
分享到

基于C语言如何实现学生管理系统

2023-06-29 19:06:15 109人浏览 安东尼
摘要

本篇内容主要讲解“基于C语言如何实现学生管理系统”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“基于C语言如何实现学生管理系统”吧!1.目标要求:学生成绩管理系统2.可增、删、改、查、浏览3.数据

本篇内容主要讲解“基于C语言如何实现学生管理系统”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“基于C语言如何实现学生管理系统”吧!

1.目标要求:

学生成绩管理系统
2.可增、删、改、查、浏览
3.数据保存在文件中

2.C语言代码:

文件1:源文件

#include"mylist.h"//菜单设计 void menu(){    //所有文件都同步到文件     printf("-------------【学生管理信息】-------------------\n");    printf("\t\t0.退出系统\n");    printf("\t\t1.录入信息\n");    printf("\t\t2.浏览信息\n");    printf("\t\t3.修改信息\n");    printf("\t\t4.删除信息\n");    printf("\t\t5.查找信息\n");    printf("------------------------------------------------\n");    }struct node* list;//用户的交互//根据所选的菜单项,作相应的事情 void keyDown(){        int choice = 0;    struct student data;    struct Node* pMove = NULL;    scanf("%d",&choice);    switch(choice){        case 0:            printf("正常退出!\n");            system("pause");            exit(0);            break;        case 1:            printf("-------------录入信息-------------------\n");            //插入链表             fflush(stdin);    //清空缓冲区!!!!!!!!!             printf("请输入学生的\n姓名、年龄、性别、电话:\n");            scanf("%s%d%s%s",data.name,&data.age,data.sex,data.tel);            insertNodeByHead(list,data);             break;        case 2:            printf("-------------浏览信息-------------------\n");            printList(list);    //打印链表            break;        case 3:            printf("-------------修改信息-------------------\n");            printf("请输入要修改信息的学生姓名:");            scanf("%s",data.name);            reviseInfoByData(list,data.name);             break;        case 4:            printf("-------------删除信息-------------------\n");            printf("请输入删除学生的姓名:");            scanf("%s",data.name);            deleteNode(list,data.name);            break;        case 5:            printf("-------------查找信息-------------------\n");            printf("请输入要查找学生的姓名:");            scanf("%s",data.name);            if( pMove = searchInfoByData(list,data.name)){                printf("姓名\t年龄\t性别\t电话\n");                 printf("%s\t%d\t%s\t%s\n",pMove->data.name,pMove->data.age,pMove->data.sex,pMove->data.tel);            }            break;        default:            printf("选择错误,重新输入\n");            system("pause");            break;     }    writeInfoToFile(list,"1.txt");} int main(){    list = createList();    readInfoFromFile(list,"1.txt");    while(1){                menu();        keyDown();        system("pause");        system("cls");    }     system("pause");    return 0;}

文件2:mylist.h

#include<stdio.h>#include<stdlib.h> #include<string.h> //数据的设计-----》学生信息抽象出struct student{    char name[20];    int age;    char sex[5];    char tel[20];    //    int math;//    int english;};//结构//测试的结构 struct Node{    struct student data;    struct Node* next;}; //创建表头 struct Node* createList(){    struct Node* headNode = (struct Node*)malloc(sizeof(struct Node));    headNode->next = NULL;    return headNode;}//创建节点 struct Node* createNode(struct student data){    struct Node* newNode = (struct Node*)malloc(sizeof(struct Node));    newNode->data = data;    newNode->next = NULL;    return newNode;} //插入结点(表头法)void insertNodeByHead(struct Node* headNode, struct student data){    struct Node* newNode = createNode(data);    newNode->next = headNode->next;     headNode->next = newNode;}//指定位置删除void deleteNode(struct Node* headNode,char* name){    struct Node* posFrontNode;    struct Node* posNode;    if(headNode->next == NULL){        printf("链表为空!\n");        return;     }    posFrontNode = headNode;    posNode = headNode->next;    while(posNode && strcmp(posNode->data.name,name)){        posFrontNode = posNode;        posNode = posFrontNode->next;    }    if(!posNode){        printf("您要删除的数据不存在!\n");         return;    }    if(!strcmp(posNode->data.name,name)){        posFrontNode->next = posNode->next;        free(posNode);    }} //查找功能struct Node* searchInfoByData(struct Node* headNode,char* name) {    struct Node* posNode;    if(headNode->next == NULL){        printf("链表为空!\n");        return NULL;     }    posNode = headNode->next;    while(posNode && strcmp(posNode->data.name,name)){;        posNode = posNode->next;    }    if(!posNode){        printf("您要查找的数据不存在!\n");         return NULL;    }    return posNode; }//修改功能void reviseInfoByData(struct Node* headNode,char* name) {    struct Node* posNode;    if(headNode->next == NULL){        printf("链表为空!\n");        return;     }    posNode = headNode->next;    while(posNode && strcmp(posNode->data.name,name)){;        posNode = posNode->next;    }    if(!posNode){        printf("您要修改的数据不存在!\n");         return;    }    printf("请输入学生[%s]的年龄、性别、电话:\n",posNode->data.name);    scanf("%d%s%s",&posNode->data.age,posNode->data.sex,posNode->data.tel);}//文件读操作void readInfoFromFile(struct Node* headNode,char* fileName){    //1.打开文件    FILE *fp;    struct student data;    fp = fopen(fileName,"r");    if(fp == NULL){        fopen(fileName,"w+");//打开文件具有创建功能     }    //2.读文件     while(fscanf(fp,"%s\t%d\t%s\t%s\n",data.name,&data.age,data.sex,data.tel)!=EOF){        insertNodeByHead(headNode,data);     }    //3.关闭文件    fclose(fp);}//文件写操作void writeInfoToFile(struct Node* headNode,char* fileName){    //1.打开文件    FILE *fp;    fp = fopen(fileName,"w");    struct Node* pMove = headNode->next;        //2.写文件     while(pMove){        fprintf(fp,"%s\t%d\t%s\t%s\n",pMove->data.name,pMove->data.age,pMove->data.sex,pMove->data.tel);        pMove = pMove->next;    }    //3.关闭文件    fclose(fp);}//打印链表void printList(struct Node* headNode){    struct Node* pMove = headNode->next;    //设计列数据的处理    printf("姓名\t年龄\t性别\t电话\n");     while(pMove){        printf("%s\t%d\t%s\t%s\n",pMove->data.name,pMove->data.age,pMove->data.sex,pMove->data.tel);        pMove = pMove->next;    }    printf("\n");}

3.运行结果:

基于C语言如何实现学生管理系统

基于C语言如何实现学生管理系统

基于C语言如何实现学生管理系统

基于C语言如何实现学生管理系统

到此,相信大家对“基于C语言如何实现学生管理系统”有了更深的了解,不妨来实际操作一番吧!这里是编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

--结束END--

本文标题: 基于C语言如何实现学生管理系统

本文链接: https://www.lsjlt.com/news/326120.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 基于C语言如何实现学生管理系统
    本篇内容主要讲解“基于C语言如何实现学生管理系统”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“基于C语言如何实现学生管理系统”吧!1.目标要求:学生成绩管理系统2.可增、删、改、查、浏览3.数据...
    99+
    2023-06-29
  • 基于C语言实现学生管理系统
    本文实例为大家分享了C语言实现学生管理系统的具体代码,供大家参考,具体内容如下 1.目标要求: 1.学生成绩管理系统2.可增、删、改、查、浏览3.数据保存在文件中 2.C语言代码: ...
    99+
    2024-04-02
  • 基于C语言实现简单学生成绩管理系统
    本文实例为大家分享了C语言实现简单学生成绩管理系统的具体代码,供大家参考,具体内容如下 一、系统主要功能 1、密码登录2、输入数据3、查询成绩4、修改成绩5、输出所有学生成绩6、退出...
    99+
    2024-04-02
  • C语言如何实现班级学生管理系统
    这篇文章将为大家详细讲解有关C语言如何实现班级学生管理系统,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。下面是根据班级,这个人数较少的单位设计的学籍管理系统,录入时,要求班内序号由1开始  按顺...
    99+
    2023-06-25
  • C语言如何实现学生档案管理系统
    今天小编给大家分享一下C语言如何实现学生档案管理系统的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。#include<s...
    99+
    2023-06-30
  • C语言如何实现简易学生管理系统
    本篇内容主要讲解“C语言如何实现简易学生管理系统”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“C语言如何实现简易学生管理系统”吧!首先我们在做一个管理系统之前要了解这个学生管理系统需要哪些功能,...
    99+
    2023-07-02
  • C语言实现学生消费管理系统
    本文实例为大家分享了C语言实现学生消费管理系统的具体代码,供大家参考,具体内容如下 代码可以实现的功能: (1)直接从终端键盘输入信息(2)从磁盘文件录入学生信息(3)可以查询学生消...
    99+
    2022-11-13
    C语言学生消费系统 C语言消费管理系统 C语言学生管理系统
  • C语言实现班级学生管理系统
    本文实例为大家分享了C语言实现班级学生管理系统的具体代码,供大家参考,具体内容如下 下面是根据班级,这个人数较少的单位设计的学籍管理系统,录入时,要求班内序号由1开始  按顺序录入,...
    99+
    2024-04-02
  • C语言实现简易学生管理系统
    本文实例为大家分享了C语言实现学生管理系统的具体代码,供大家参考,具体内容如下 首先我们在做一个管理系统之前要了解这个学生管理系统需要哪些功能,如:简单的增,删,改,查,即:录入成绩...
    99+
    2024-04-02
  • C语言实现学生宿舍管理系统
    本文实例为大家分享了C语言实现学生宿舍管理系统的具体代码,供大家参考,具体内容如下 实现简单的学生宿舍基本信息管理,宿舍的基本信息包括楼号、房间号、面积、所容纳人数、已入住人数等,系...
    99+
    2024-04-02
  • c语言实现学生管理系统详解
    目录infor.htest.cinfor.c总结 该学生管理系统的实现是通过分文件的方式来写的,infor.h 文件为头文件,源文件infor.c实现源文件tes...
    99+
    2024-04-02
  • C语言实现学生管理系统总结
    本文实例为大家分享了C语言实现学生管理系统的具体代码,供大家参考,具体内容如下 前言 本周完成了学生管理系统,在完成的过程中遇见了许多问题,今天来总结上周写管理系统一些比较困难的模块...
    99+
    2024-04-02
  • C语言实现学生信息管理系统
    本文实例为大家分享了C语言实现学生信息管理系统的具体代码,供大家参考,具体内容如下 #define _CRT_SECURE_NO_WARNINGS #include <stdi...
    99+
    2024-04-02
  • C语言实现学生档案管理系统
    本文实例为大家分享了C语言实现学生档案管理系统的具体代码,供大家参考,具体内容如下     #include<stdio.h&...
    99+
    2024-04-02
  • C语言编写实现学生管理系统
    本文实例为大家分享了C语言实现学生管理系统的具体代码,供大家参考,具体内容如下 项目介绍 学生信息管理系统是一个基于C语言开发的系统,其中有用到冒泡排序、指针、结构体、二位数组等知识...
    99+
    2024-04-02
  • C语言模拟实现学生学籍管理系统
    学生学籍管理系统的C语言模拟实现是对链表、指针、结构体、文件操作等知识点的综合运用,需要实现的功能主要包含:输入学生信息、显示学生信息、查询学生信息、新增学生信息、删除学生信息、修改...
    99+
    2024-04-02
  • C++基于单链表如何实现学生成绩管理系统
    本文小编为大家详细介绍“C++基于单链表如何实现学生成绩管理系统”,内容详细,步骤清晰,细节处理妥当,希望这篇“C++基于单链表如何实现学生成绩管理系统”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。具体代码如下#...
    99+
    2023-06-30
  • C语言如何实现学生宿舍信息管理系统
    这篇文章主要讲解了“C语言如何实现学生宿舍信息管理系统”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“C语言如何实现学生宿舍信息管理系统”吧!功能描述该学生宿舍信息管理系统主要实现的功能有:创...
    99+
    2023-06-29
  • C语言如何实现学籍管理系统
    这篇文章给大家分享的是有关C语言如何实现学籍管理系统的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。具体内容如下设计一个学籍管理系统,基本功能包括:输入学生基本信息2.查询学生信息(1.按学号2.按姓名)3.删除学...
    99+
    2023-06-29
  • C语言实现简单的学生学籍管理系统
    本文实例为大家分享了C语言实现学生学籍管理系统的具体代码,供大家参考,具体内容如下 一 .课题设计内容与主要功能 1.1问题描述: 通过该系统实现对学生学籍信息进行录入、显示、修改、...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作