基本信息
源码名称:学生信息管理系统.c
源码大小:0.02M
文件格式:.c
开发语言:C/C++
更新时间:2021-05-01
   友情提示:(无需注册或充值,赞助后即可获取资源下载链接)

     嘿,亲!知识可是无价之宝呢,但咱这精心整理的资料也耗费了不少心血呀。小小地破费一下,绝对物超所值哦!如有下载和支付问题,请联系我们QQ(微信同号):813200300

本次赞助数额为: 2 元 
   源码介绍
利用C语言进行简易的学生管理系统

#include <stdio.h>
#include <Windows.h>
#include <conio.h>
#include <stdlib.h>
#include <unistd.h>
#include <tchar.h>
#define   NR(x)   (sizeof(x)/sizeof(x[0] 0))
#define  TITLE  "学生信息管理系统"
#define  AUTHOR "   李健  "
#define  DATE   "   "
#define  SIZE   100
//在终端上打印信息
#define Print_Info_To_console(str,hOut,pos,x,y,color_type) \
    SetConsoleTextAttribute(hOut, color_type);  \
    pos.X = x;                                  \
    pos.Y = y ;                                 \
    SetConsoleCursorPosition(hOut,pos);         \
    printf("%s",str);                           
 
//清屏
#define ClearScreen() \
        system("cls");
 
    
//定义枚举Keyboard的键值数据 
enum 
{
    UP = 72,
    DOWN = 80 ,
    LEFT = 75 ,
    RIGHT = 77 ,
    ENTER = 13 ,
    ESC = 27 ,
};
 
//存储学生信息的结构体
struct student
{
    char name[20] ; //名字
    int  id ;       //学生ID
    float score ;   //分数
};
 
 
 
//定义要显示的菜单 
char *menu[] = 
{
    "*学生信息添加*",
    "*学生信息查找*",
    "*学生信息打印*",
    "*学生信息修改*",
    "*学生信息删除*",
    "*学生信息保存*",
    "*学生信息导入*",
    "*    退出    *",
};
 
 
//窗口初始化
void HANDLE_init(HANDLE hOut);
//显示菜单 
void showmenu(HANDLE hOut ,char **menu , int size , int index) ;
//获取用户输入 
int  get_userinput(int *index , int size) ;
//学生信息添加
void stu_add(HANDLE hOut);
//学生信息打印
void stu_show(HANDLE hOut);
//学生信息查找
void stu_search(HANDLE hOut);
//学生信息保存
void stu_save(HANDLE hOut);
//学生信息导入
void stu_load(HANDLE hOut);
//学生信息修改
void stu_modefi(HANDLE hOut);
//学生信息删除
void stu_delete(HANDLE hOut);
 
 
//学生的个数
int stucount ; 
//定义一个数组,用于存储学生信息  
struct student array[SIZE] = {0}; 
//定义设置光标结构体变量
CONSOLE_CURSOR_INFO cci; 
//定义默认的坐标位置     
COORD pos = {0,0};
 
 
int main()
{
    int i;
    int ret ;
    int index = 0 ;
    HANDLE hOut;
    hOut = GetStdHandle(STD_OUTPUT_HANDLE);
    HANDLE_init(hOut);
    while(1)
    {
        showmenu(hOut , menu , NR(menu) , index);
        ret = get_userinput(&index , NR(menu));
        if(ret == ESC)
            break ;
        if(ret == ENTER)
        {
            switch(index)
            {
                case 0:  stu_add(hOut) ; break ;    //学生信息添加
                case 1:  stu_search(hOut);break ;   //学生信息查找
                case 2:  stu_show(hOut); break ;    //学生信息打印
                case 3:  stu_modefi(hOut); break ;  //学生信息修改
                case 4:  stu_delete(hOut); break ;  //学生信息删除
                case 5:  stu_save(hOut); break ;    //学生信息保存
                case 6:  stu_load(hOut); break ;    //学生信息导入
                case 7:  ClearScreen();return 0 ;   //退出学生信息管理系统
            }
        }
    }
    //关闭窗口句柄
    CloseHandle(hOut);
    return 0;
}
 
//窗口初始化
void HANDLE_init(HANDLE hOut)
{
    SetConsoleTitleA(TITLE);
    //获取当前的句柄---设置为标准输出句柄 
    //获取光标信息
    GetConsoleCursorInfo(hOut, &cci); 
    //设置光标大小   
    cci.dwSize = 1; 
    //设置光标不可见 FALSE   
    cci.bVisible =  0; 
    //设置(应用)光标信息
    SetConsoleCursorInfo(hOut, &cci); 
}