C语言版本学生信息管理系统

仍然有一些小bug,后续会发布OC完善版的图书馆管理系统,欢迎批评指正。

  1 #include <stdio.h>
  2 void menu_choose();
  3 typedef struct
  4 {
  5     int Id;
  6     int age;
  7     char name[50];
  8     char sex[10];
  9
 10 }Student;
 11 Student stuArr[100];
 12 int stuCount=0;
 13
 14 void readStu(Student * stu)
 15 {
 16     printf("所有学生信息为:\n");
 17     for(int i=0;i<stuCount;i++)
 18     {
 19     printf("姓名为:%s 性别为:%s 年龄为:%d 学号为:%d\n", stu[i].name, stu[i].sex, stu[i].age, stu[i].Id);
 20     }
 21     menu_choose();
 22 }
 23 void findStu(Student stu)
 24 {
 25     printf("请输入要查找的学生学号:");
 26     scanf("%d",&stu.Id);
 27     for(int i=0;i<stuCount;i++)
 28     {
 29         if(stuArr[i].Id==stu.Id)
 30         {
 31             printf("要查找的学生信息为:");
 32             printf("姓名为:%s 性别为:%s 年龄为:%d 学号为:%d\n",stuArr[i].name,stuArr[i].sex,stuArr[i].age,stuArr[i].Id);
 33         }
 34         if(stuArr[stuCount-1].Id!=stu.Id)
 35         {
 36             printf("没有找到该学生\n");
 37         }
 38
 39     }
 40 }
 41 void addStu(Student stu)
 42 {
 43
 44     printf("请输入学生姓名:");
 45     scanf("%s",stu.name);
 46     printf("请输入学生性别:");
 47     scanf("%s",stu.sex);
 48     printf("请输入学生年龄:");
 49     scanf("%d",&stu.age);
 50     printf("请输入学生学号:");
 51     scanf("%d",&stu.Id);
 52     stuArr[stuCount]=stu;
 53     stuCount++;
 54     printf("添加成功!\n");
 55 //    readStu(stuArr);
 56     menu_choose();
 57 }
 58 void delStu(Student stu)
 59 {
 60     printf("请输入要删除的学生学号:");
 61     scanf("%d",&stu.Id);
 62     for(int i=0;i<stuCount;i++)
 63     {
 64         if(stuArr[stuCount-1].Id!=stu.Id)
 65         {
 66         printf("该学生不存在\n");
 67         }
 68         if(stuArr[i].Id == stu.Id)
 69         {
 70             stuArr[i]=stuArr[i+1];
 71             printf("删除成功!\n");
 72         }
 73
 74     }
 75     menu_choose();
 76
 77 }
 78 void updateStu(Student stu)
 79 {
 80     printf("请输入要修改的学生学号:");
 81     scanf("%d",&stu.Id);
 82     for(int i=0;i<stuCount;i++)
 83     {
 84         if(stuArr[i].Id==stu.Id)
 85         {
 86             printf("你将学生姓名修改为:");
 87             scanf("%s",stu.name);
 88             printf("你将学生性别修改为:");
 89             scanf("%s",stu.sex);
 90             printf("你将学生年龄修改为:");
 91             scanf("%d",&stu.age);
 92             printf("你将学生学号修改为:");
 93             scanf("%d",&stu.Id);
 94             stuArr[i]=stu;
 95             printf("修改成功\n");
 96         }
 97         if(stuArr[stuCount-1].Id!=stu.Id)
 98         {
 99             printf("该学生不存在\n");
100         }
101     }
102     menu_choose();
103 }
104 int exitSys()
105 {
106     return 0;
107 }
108 void menu_choose()
109 {
110
111     printf("               学生管理系统       \n");
112     printf(" 1.查看所有学生            ");
113     printf(" 2.增加学生信息\n");
114     printf(" 3.删除学生信息            ");
115     printf(" 4.修改学生信息\n");
116     printf(" 5.查找学生信息            ");
117     printf(" 6.退出系统   \n");
118     printf("请输入功能编号:");
119     int menunum;
120     scanf("%d",&menunum);
121     Student stu;
122     switch (menunum)
123     {
124         case 1:
125             readStu(stuArr);
126             break;
127         case 2:
128             addStu(stu);
129             break;
130         case 3:
131             delStu(stu);
132             break;
133         case 4:
134             updateStu(stu);
135             break;
136         case 5:
137             findStu(stu);
138             break;
139         case 6:
140             exitSys();
141         default:
142             break;
143     }
144 }
145 int main(int argc, const char * argv[])
146 {
147     menu_choose();
148     return 0;
149 }
时间: 2024-10-06 12:53:38

C语言版本学生信息管理系统的相关文章

C语言编写学生信息管理系统

学完C语言,自己想着编写一个学生信息管理系统,既可以巩固C语言知识,也能体验怎么合理地设计和实现一个项目. 设计比较简陋,希望各位大佬多多批评,多多指教! 这个系统最重要的便是主要功能框架,在主函数中用switch()多分支选择结构实现. 我是链表实现,代码如下: 1 #include<stdio.h> 2 #include<stdlib.h> 3 #include<string.h> 4 #include<malloc.h> 5 #include<s

学生信息管理系统(C语言版本)

这是我个人写的一个学生管理系统,这是我仅仅用来练手的代码,要知道链表可是你在面试过程中最大机率会考到的,我是陆续从单向链表入门,然后采用双向链表写的代码!如有BUG,请指正,让我们共同进步! 1 #include<stdio.h> 2 #include<malloc.h> 3 #include<string.h> 4 struct student 5 { 6 int id; 7 char name[100]; 8 int age; 9 int sex; 10 int c

C语言课程设计之学生信息管理系统

#include"stdio.h"        //标准的输入输出函数文件头部说明 #include"math.h"              // 数学函数头部说明 #include"string.h" #include"stdlib.h"    //通过该函数头部里的函数,改变控制台的背景和颜色 #include"windows.h"    //头文件声明,下文用到了改变控制台的宽度和高度 #defi

【转载】C语言综合实验1—学生信息管理系统

http://www.cnblogs.com/Anker/archive/2013/05/06/3063436.html 实验题目:学生信息管理系统 实验要求:用户可以选择1-7可以分别进行学生信息的查看.添加.删除,修改,计算平均成绩,保存,退出系统操作. 提示:用一个结构体类型表示学生信息 typedef struct node /*定义结构体*/ { int num; //学号 char name[15];//姓名 char sex[9]; //性别 int age; //年龄 int e

大一C语言结课设计之《学生信息管理系统》

第一次写这么长的程序,代码仅供參考,有问题请留言. /* ** 学生信息管理系统 ** IDE:Dev-Cpp 4.9.9.2 ** 2014-6-15 */ #include <stdio.h> #include <stdlib.h> #include <string.h> #include <algorithm> #include <vector> using std::sort; using std::vector; /*==存储单元节点=

C语言学生信息管理系统

//原创:!! 1 #include <stdio.h> 2 #include <stdlib.h> 3 #include <string.h> 4 #include <algorithm> 5 using namespace std; 6 int n; 7 8 struct student 9 { 10 char name[20] ; //姓名: 11 char classnumber[10] ; //班级 :(1403) 12 char gender[2

学生信息管理系统修改

北京工业大学耿丹学院 c语言设计课程报告   课程设计名称:高级语言程序设计 专业班级:计算机科学与技术1 姓名:吴双 学号:150809201   2016年5月10日 一 对c语言指针链表的体会 ------------------------ 二 修改学生信息管理系统 ------------------------ 三 体会 ------------------------ 一 对c语言指针链表的体会 1.指针 简单来说,指针是一个存储计算机内存地址的变量. 用 int *ptr 这种形

《C语言编写 学生成绩管理系统》

/* (程序头部凝视開始)* 程序的版权和版本号声明部分* Copyright (c) 2011, 烟台大学计算机学院学生 * All rights reserved.* 文件名: 学生成绩管理系统 * 作 者: 刘江波 * 完毕日期: 2012 年 6 月 23 日* 版 本 号: v.623 * 对任务及求解方法的描写叙述部分 * 程序头部的凝视结束 */ #include "stdio.h" #include"string" /*定义学生结构体*/ struc

学生信息管理系统

根据资料显示,那么,如果写一个字符串到一个文件中,是什么方式呢?显示到屏幕上是默认的输出文件,如果是硬盘中的一个文件,首先要打开一个文件,然后才能往里写,那么就要告诉程序这个文件在什么地方,按照什么样的方式打开(读.写.读和写.添加.覆盖等),然后打开后要给这个打开的文件一个符号(指针变量),表示后续的读和写都是针对这个文件的,而不是到屏幕的,这个指针变量以后就代表了文件自身了. 在学生信息管理系统中,需要同时保存一个学生的姓名,性别,年龄等信息,那么设置变量保存很多同学的这些信息就有点不太方便