C++实现简单的信息管理系统

本文为大家分享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++实现简单的图书管理系统

C++实现简单的职工信息管理系统

C++基础学生管理系统

以上就是本文的全部内容,希望对大家的学习有所帮助。

(0)

相关推荐

  • C++实现简单的职工管理系统实训代码

    本文实例为大家分享了C++职工管理系统实例代码 1.单个职工的头文件 staff.h #ifndef STAFF_H_INCLUDED #define STAFF_H_INCLUDED //结构体创建 struct staff { char ID[10]; char name[10]; char sex[10]; int pay; int reward; int factpay; }; //自定义结构体 typedef struct staff staff; //单个职工信息创建 staff C

  • C++实现银行排队系统

    本文实例为大家分享了C++实现银行排队系统的具体代码,供大家参考,具体内容如下 #include <stdio.h> #include <string.h> #include <stdlib.h> int cnt=0; //当日客流量 int sum=0; //当日客户排队总时间 typedef struct pnode{ int number; int cometime; int leavetime; struct pnode *next; }*person; typ

  • C++实现简单的图书管理系统

    今天再为大家介绍另一个常用的管理系统--图书管理系统,希望大家可以亲自动手实践一下,下面就与大家一起分享我的劳动成果. 图书信息包括:登录号.书名.作者名.分类号.出版单位.出版时间.价格等.试设计一图书信息管理系统,使之能提供以下功能: (1)图书信息录入功能(图书信息用文件保存) (2)图书信息浏览功能 (3)查询和排序功能:(至少一种查询方式)         .按书名查询         .按作者名查询 (4)图书信息的删除与修改 分享代码如下 #include<iostream.h>

  • C++学生信息管理系统

    本文实例为大家分享了C++学生信息管理系统源码,供大家参考,具体内容如下 1. tea_list.c #include<stdio.h> #include<stdlib.h> #include<string.h> #include"teacher.h" int sq_tea ; PTEA head = NULL ; FILE *fp ; int tea_llopen(const char* path)//打开文件 { fp=fopen(path,&q

  • C++实现简单的学生管理系统

    C++实现简单的学生管理系统 //Student.cpp #include<iostream> using namespace std; struct Stu { char no[10]; char name[16]; int math; int chi; double ave; }; class Student { public: Stu st; Student * next; public: Student(){} Student(Stu s) { st=s; next=NULL; st.

  • C++实现简单的职工信息管理系统

    功能主模块描述 模块一:增加人员函数Add():增加职工基本信息. 模块二:删除人员函数Delete():删除指定的职工的基本信息以及薪酬. 模块三:修改人员函数Modify():修改指定的职工基本信息. 模块四:查询职工信息函数Search():查询指定的职工信息以及薪酬. 模块五:排序职工信息函数Sort():职工信息排序功能实现 模块六:基础数据设置函数Set():设置五类职位的基本薪酬. 模块七:数据存盘,载入函数Save()以及Load():储存职工基本信息,薪酬以及五类职位的基本薪酬

  • 基于C++语言实现机动车违章处罚管理系统

    关键代码如下所示: #include <iostream> #include <iomanip> #include <fstream> #include <string> #include <list> using namespace std; class Violation{ public: Violation(){points=fine=0; number=carNumber=tel=location=isSpot =police=camer

  • C++基础学生管理系统

    本文实例为大家分享了C++基础学生管理系统的实现代码,供大家参考,具体内容如下 适用于c++6.0,codeblocks等常用工具 1. 链表处理部分 #include<stdio.h> #include<string.h> #include<stdlib.h> #include"linklist.h" #include"elem.h" void dispnode(linklist h) { node *p; p=h->ne

  • C++实现简单的信息管理系统

    本文为大家分享C++实现简单的信息管理系统,小编之前在学习的时候也要做一些管理系统,在网上查了许多资料,现在我把资料分享给大家,希望能够帮助到大家. #include <stdio.h> #include <stdlib.h> #include "file.h" void savaList(Node *head)/**把用户录入的数据存储到文件里面去方便下次读取*/ { FILE *fp=fopen("data\\data.txt" ,&qu

  • C#实现简单学生信息管理系统

    本文实例为大家分享了C#实现简单学生信息管理系统的具体代码,供大家参考,具体内容如下 一.运行环境windows,使用vs编译软件 二.主要功能 登录.添加学生信息.修改学生信息.删除学生信息.查询学生信息 三.实现步骤 1.登陆界面功能实现 老规矩,先贴下主要代码: //构造方法 public Login() { InitializeComponent(); this.label3.Parent = this; this.label1.BackColor = Color.Transparent

  • python实现简单学生信息管理系统

    python简单的学生信息管理系统-文件版,供大家参考,具体内容如下 功能如下 主函数部分 增加学生信息 修改学生信息 删除学生信息 查询学生 显示所有学生的信息 将数据录入文件 读取文件数据 学习文件模块后,将之前做的学生信息管理系统添加文件模块. 功能如下 1.新增学生信息: 2.修改学生信息: 3.删除学生信息: 4.查询学生信息: 5.显示学生信息; 6.将数据录入文件: 7.读取文件数据: 8.退出系统. 主函数部分 这里定义一个列表L,用来存储学生信息. 增加学生信息 将学生信息保存

  • Java实现简单学生信息管理系统

    最近在学习Java,所以写了个学生信息管理系统,话不多说,上代码. Student.java: package com.mumu; public class Student { //定义学生类 private String name; private String age; private String id; private String room_num; private int math; private int english; private int physic; public St

  • C++实现简单职工信息管理系统

    本文实例为大家分享了C++职工信息管理系统的具体代码,供大家参考,具体内容如下 功能主模块描述 模块一:增加人员函数Add():增加职工基本信息. 模块二:删除人员函数Delete():删除指定的职工的基本信息以及薪酬. 模块三:修改人员函数Modify():修改指定的职工基本信息. 模块四:查询职工信息函数Search():查询指定的职工信息以及薪酬. 模块五:排序职工信息函数Sort():职工信息排序功能实现 模块六:基础数据设置函数Set():设置五类职位的基本薪酬. 模块七:数据存盘,载

  • Java实现简单客户信息管理系统

    本文实例为大家分享了Java实现客户信息管理系统的具体代码,供大家参考,具体内容如下 一.目标 模拟实现一个基于文本界面的<客户信息管理软件> 进一步掌握编程技巧和调试技巧,熟悉面向对象编程 主要涉及以下知识点: 类结构的使用:属性.方法及构造器 对象的创建与使用 类的封装性 声明和使用数组 数组的插入.删除和替换 关键字的使用:this 二.系统结构设计 CustomerView为主模块,负责菜单的显示和处理用户操作 CustomerList为Customer对象的管理模块,内部用数组管理一

  • C语言实现简单职工信息管理系统

    本文实例为大家分享了C语言实现职工信息管理系统的具体代码,供大家参考,具体内容如下 代码实现如下: #include <stdio.h>//输入.输出指令 #include <malloc.h>//在内存中动态的分配size字节的存储区 #include <string.h>//字符串相关操作指令 #include <stdlib.h>//五种类型.一些宏和通用工具函数 #include<conio.h>//通过键盘产生的对应操作 #includ

  • C语言实现简单学生信息管理系统

    学生信息管理系统的功能有,也可以自己增加或者改进一些函数功能. 在main函数里调用这8个函数 学生信息包含姓名.年龄.学号.成绩,需要定义一个结构体(结构体是全局变量,所以需要全局声明): typedef struct _student{     char name[20];     int age;     int stuNum;     int score; }student; 需要有一个存储数据的空间,所以使用单链表存储,定义如下: typedef struct _Node{     s

  • java实现简单的客户信息管理系统

    本文实例为大家分享了java实现简单客户信息管理系统的具体代码,供大家参考,具体内容如下 全篇文章开源,源码供读者使用.这是一篇关于java的客户信息管理系统的文章,里面简单实现了数据库管理系统的基本功能,可以算是算笔者的学习笔记,也为大家学习提供便利.所以代码都是在一个包下完成的,所以没有使用导包的操作,省去了外卖project的申明,剩下的就写的文章里了.话不多说,看文章吧.首先给大家看一下总的操作界面(别看简单,里面的还是有东西的),后面就附上实现源码.要求和注释 Customer类 下面

  • linux下C/C++学生信息管理系统

    一.简介 大学期间用vc++开发的简单的学生信息管理系统,主要有添加学生信息.删除学生信息.修改学生信息.查询学生信息.显示学生信息.综合统计(各课程平均成绩和合格率).总分排序和退出系统.设计: 二.详解 1.代码 (1)main.cpp #include<iostream> #include<fstream> #include<iomanip> //使用setw()函数 #include<windows.h> //使用system()函数 #includ

随机推荐