本文为大家分享C++实现简单的信息管理系统,小编之前在学习的时候也要做一些管理系统,在网上查了许多资料,现在我把资料分享给大家,希望能够帮助到大家。

#include <stdio.h>
#include <stdlib.h>
#include "file.h" void savaList(Node *head)/**把用户录入的数据存储到文件里面去方便下次读取*/
{   FILE *fp=fopen("data\\data.txt" ,"w") ;    Node *p ;   for(p=head->next;p;p=p->next)   {   fwrite(&(p->data),sizeof(students),1,fp) ;   }   fclose(fp) ;    }   void duquLisr(Node *head)/**读取用户之前所录入的数据 */
{   FILE *fp=fopen("data\\data.txt" ,"r") ;    students e ;    while( fread(&e,sizeof(students) ,1,fp ) )  {   insertList(head,e) ;    }   fclose(fp) ;    }   #include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "goods.h"    /**录入数据,函数目的返回一个goods类型的值*/  /**      char name[M] ; char phone[M] ; char street[M] ;    char city[M] ;  char youb[M] ; */
students lurushuju()
{   students e ;    printf("请输入学生的姓名 ") ; scanf("%s",e.name);   printf("请输入学生的电话 ") ; scanf("%s",e.phone) ; printf("请输入学生的街道 ") ; scanf("%s",e.street) ;    printf("请输入学生的城市信息 ") ;   scanf("%s",e.city) ;  printf("请输入学生的邮编 ") ; scanf("%s",e.youb) ;  return e ;  }
void shuchushuju(students e)/**依次输出数据e*/
{   printf("%15s%15s%15s%15s%15s\n" , e.name ,e.phone,e.street,e.city,e.youb) ;   }
void xiugaishuju(students *e)/**根据地址修改数据e里面的个别数据*/ /**通过选择序号选择想要修改的数据*/
{   int score ; int count=1 ;  printf("请输入想要修改的数据类型\n") ;    do  {   printf("1.姓名;2.电话;3.街道信息;4.城市信息;5.邮编;6.退出\n"); scanf("%d",&score) ;  switch(score)   {   case 1: scanf("%s",e->name);   break ; case 2: scanf("%s",e->phone) ; break;  case 3: scanf("%s",e->street) ;    break ; case 4: scanf("%s",e->city) ;  break ; case 5: scanf("%s",e->youb) ;  break ; default:    count=0;   }   }while(count);  }   #include <stdio.h>
#include <string.h>
#include "list.h"
#include "goods.h"    void creatList(Node *head,int n)/**创建一个长度为n的链表*/
{   int i ; students p ;    for(i=1; i<=n ; i++) {   p=lurushuju() ;    insertList(head,p) ;    }   }
void insertList(Node *head,students e) /**把e中的某一个值以一定的顺序插入到以head为头节点的链表上面去*/
{   Node *p;    Node *q;    q=(Node*)malloc(sizeof(Node)); q->data=e;  for(p=head; p->next && strcmp( (p->next)->data.name,e.name)<0 ;p=p->next ) ;   q->next=p->next; p->next=q;
}   int delList(Node *head,char e[])/**把链表姓名为e的一项删除,先找找到删除成功就返回1,否者返回0*/
{   Node *p;    for(p=head; p->next && strcmp(e,p->next->data.name) ;p=p->next) ; if(p->next ==0)    {   return 0 ;  }   else    {   Node *t;    t=p->next;  p->next=t->next; free(t);    return 1 ;  }   }   Node *searchList(Node *head,char e[])/**在链表中查找名字这一项找到返回这个节点的地址 否者返回null*/
{   Node *p;    for(p=head; p && strcmp(e,p->data.name) ; p=p->next ) ; return p ;
}   void disputList(Node *head)/**依次顺序输出head链表*/
{   Node *p;    for(p=head->next;p;p=p->next)   shuchushuju(p->data);    }   void changeList(Node *head ,char e[]) /**修改链表中某一个节点的data值*/ /**该系统只能通过姓名查找 后续在完善*/
{   Node *p ;   p=searchList(head,e) ; if(!p)  {   printf("error\n");    }   else    {   xiugaishuju(&(p->data)) ;    }   }
void destroy(Node *head)
{   Node *p;    for(p=head;p;p=p->next)    free(p);
}   #include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "list.h"
#include "goods.h"    void mainmenu(Node *head)
{   int scored ;    int count=1 ;  char e[100] ;   int n;  students p; do  {   printf("================****学生信息管理系统(公测版by李远航)****=====\n") ;    printf("==========================开始===============================\n"); printf("==1.录入数据 2.修改数据 3.显示数据 4.删除数据 5.插入数据=\n") ;    printf("=======7.读取数据========6.存盘退出=======8.退出=============\n") ;  printf("=======================**********============================\n") ;    printf("请输入你想要做的事\n") ;   scanf("%d",&scored);  switch(scored)  {   case 1: printf("请输入你大约想保存的学生\n"); scanf("%d",&n);   creatList(head,n);  break ; case 2: printf("请输入待改学生的姓名\n") ;  scanf("%s",e);    changeList(head , e) ;  break ; case 3: printf("   姓名   电话  街道信息   城市信息  邮件信息 \n") ;  disputList(head) ;  break ; case 4: printf("请输入待删学生的姓名\n");   scanf("%s",e);    n=delList(head, e) ;   if(n)   {   printf("删除成功\n"); }   else    {   printf("error\n") ;   }   break ; case 5: printf("请输入你想插入的信息\n");   p=lurushuju(); insertList(head, p);    break ; case 6: savaList(head); count=0;   break ; case 7: duquLisr(head); break ; default :   count=0;   }   system("pause") ; system("cls") ;   }while(count);  printf("\n\n\n\n感谢您对本系统的支持,如果您在使用过程中遇到bug,请发送邮件到1277171561@qq.com\n\n\n\n\n\n\n") ;    }   int main()
{   Node *head=(Node*)malloc(sizeof(Node));    head->next=NULL ;   mainmenu(head) ;    destroy(head) ; return 0;
}   #ifndef FILE_H_INCLUDED
#define FILE_H_INCLUDED
#include "list.h" void savaList(Node *head);/**把用户录入的数据存储到文件里面去方便下次读取*/
void duquLisr(Node *head);/**读取用户之前所录入的数据 */    #endif // FILE_H_INCLUDED   #ifndef GOODS_H_INCLUDED
#define GOODS_H_INCLUDED    typedef struct students /*定义学生信息*/
{   char name[100] ;    char phone[100] ;   char street[100] ;  char city[100] ;    char youb[100] ;    }students;  students lurushuju();/**录入数据,函数目的返回一个goods类型的值*/
void shuchushuju(students e);/**依次输出数据e*/
void xiugaishuju(students *e);/**根据地址修改数据e里面的个别数据*/ #endif // GOODS_H_INCLUDED  #ifndef LIST_H_INCLUDED
#define LIST_H_INCLUDED
#include "goods.h"    typedef struct Node /**链表结构体*/
{   students data ; struct Node *next ;
}Node ; void creatList(Node *head,int n);/**创建一个长度为n的链表*/
void insertList(Node *head,students e) ;/**把e中的某一个值以一定的顺序插入到以head为头节点的链表上面去*/
int delList(Node *head,char e[]) ;/**把链表姓名为e的一项删除,先找找到删除成功就返回1,否者返回0*/
Node *searchList(Node *head,char e[]) ; /**在链表中查找名字这一项*/
void disputList(Node *head);/**依次顺序输出head链表*/
void changeList(Node *head ,char e[]) ;/**修改链表中某一个节点的data值 */
void destroy(Node *head) ;/**摧毁一起链表数据*/ #endif // LIST_H_INCLUDED

它,

不仅仅是一个码

扫码关注

C++资源免费送

C++实现简单的信息管理系统相关推荐

  1. 用python制作一个学生信息管理软件_python实现简单学生信息管理系统

    python简单的学生信息管理系统-文件版,供大家参考,具体内容如下 功能如下 主函数部分 增加学生信息 修改学生信息 删除学生信息 查询学生 显示所有学生的信息 将数据录入文件 读取文件数据 学习文 ...

  2. 基于GUI+MySQL技术的简单学生信息管理系统

    简单的学生信息管理系统 1. 需求分析 1.1 系统总体分析 1.2 用户系统分析 2. 课题及任务功能描述 2.1 课题研究背景 2.2 功能描述 3. 总体设计 3.1 系统总体设计 3.2 系统 ...

  3. jsp mysql简单仓库信息管理系统_基于jsp+mysql的JSP简单学生信息管理系统

    运行环境: 最好是java jdk 1.8,我们在这个平台上运行的.其他版本理论上也可以. IDE环境: Eclipse,Myeclipse,IDEA都可以 tomcat环境: Tomcat 7.x, ...

  4. 用c语言做简单的用户管理系统,简单客户信息管理系统的设计与实现.doc

    简单客户信息管理系统的设计与实现 学 年 设 计 报 告 设计题目 简单客户信息管理系统的设计与实现 作者姓名 林燕.丁楠楠.赵长永.陈勇祥.孙青.张书生 所学专业 网络工程 指导教师 王汇彬 201 ...

  5. 双链表嵌套的简单学生信息管理系统

    参考:实现双链表嵌套的简单学生信息管理 作者:三速何时sub20 发布时间: 2020-07-20 10:44:40 网址:https://blog.csdn.net/weixin_44234294/ ...

  6. java简单课程_Java之从头开始编写简单课程信息管理系统

    编写简单的课程管理系统对于新手并不友好,想要出色的完成并不容易以下是我的一些经验和方法 详情可参考以下链接: 一.相关的软件下载和环境配置 1.下载并配置JDK. 2.下载eclipse. 3.下载并 ...

  7. Java简单学生信息管理系统

    JAVA简单写学生信息管理系统,实现学生信息的输入.查询.修改.删除操作 package Week;import jdk.internal.util.xml.impl.Input;import jav ...

  8. python注册登录系统_Python实现简单用户注册信息管理系统

    1 #coding:utf-8 2 ''' 3 用户注册信息管理系统4 功能包括:5 1.查看全部已注册用户信息6 2.查找用户信息7 3.修改用户信息8 4.删除用户信息9 5.添加新用户10 6. ...

  9. Python结合MySQL数据库编写简单信息管理系统

    1,项目整体逻辑及使用工具 1.1 项目整体逻辑 本项目主要是使用Python进行编写,利用Python中的pymysql库进行连接数据库,将信息存入MySQL数据库中,然后实现对信息进行增删改查等一 ...

最新文章

  1. getopt();getopt_long();getopt_long_only();option
  2. 状态栏消息提示——使用Notification
  3. 关于ICallbackEventHandler的疑问
  4. matlab判断能控和能观,实验三 利用Matlab分析能控性和能观性
  5. 使用J2SE进行服务器架构技术选型的变迁
  6. 正则表达式之模式匹配的String方法
  7. nbsp;在IE和FIREFOX下位置不对
  8. 《神奇的数学》读后感_数学家的眼光读后感
  9. 51单片机对直流电机的控制
  10. pdfminer将pdf转为csv
  11. macd底背离的python_java尝试编写macd,试验顶背离底背离
  12. [开源]蚂蚁森林自动收能量,自动解锁和自动触发
  13. PHP(gzdeflate/gzinflate)+JS(pako)前后端数据压缩
  14. docker 部署 shipyard
  15. Android surfaceview 自定义相机 拍照(闪光灯、前后摄像头)
  16. 【C语言进阶】二、指针
  17. 苹果又魔改安卓?有人说,还不如看鸿蒙……
  18. 【单链表】单链表的删除
  19. html在线发邮件代码,通过HtmlEmail 发送邮件(示例代码)
  20. 工程电磁场-恒定电流的电场和磁场

热门文章

  1. Spring Webflux –编写过滤器
  2. Speedment 3.0的新功能
  3. 交叉编译指定运行时库路径_运行时vs编译时类路径
  4. Spring Cloud对Hystrix的支持
  5. JSF 2.2在30秒内创建一个自定义Hello World组件
  6. 都灵JVM编程语言:使用ANTLR构建高级词法分析器
  7. tp框架 db::name_玩! 框架:为什么我会爱上它
  8. Java EE拦截器
  9. 关于Java的一些句子
  10. Apache Camel –从头开始开发应用程序(第2部分/第2部分)