/*
* 学生信息管理系统;
*  功能介绍:
* 1、查询(id)学生信息
* 2、增加学生 (id)学生信息
* 3、删除学生信息
* 4、修改学生信息;
* 5、打印所有学生信息;学生信息主键  “id”id值 为 正整数,*/#include <stdio.h>
#include <stdlib.h>void query_stu();
int  query_stu_exist(int id);
int add_stu();
void insert_stu(int stuid);
int delete_stu();
int change_stu();
void init();
void print_db();
void print_students();
void print_stu(int id);struct student{int id;  //学生idchar name[50];  //学生姓名float grade;int lim;  //权限
} stu[1000];int array_length = 0;   //数组长度
int students_length = 0;  //学生个数//查询学生信息--id
void query_stu()
{int i = 0;int stuid = -1;int flag = -1;printf("请输入你要查询的学生ID号:");scanf("%d", &stuid);for (i = 0; i < array_length; i++) {if (stuid == stu[i].id) {printf("This学生存在\n");print_stu(stuid);flag = 1;// return stuid;  //返回学生的id号}}if (flag != 1){printf("id = %d 的学生还没有录入。\n", stuid);}// return 0;
}//查询学生是否存在(id),返回 数组下标。--id
int  query_stu_exist(int id)
{for (int i = 0; i < array_length; i++) {if (id == stu[i].id) {return i;}}printf("id = %d 的学生还没有录入\n", id);return -1;
}/* //查询学生是否存在,返回学生的 id值。
int  query_stu_exist2(int id)
{for (int i = 0; i < array_length; i++) {if (id == stu[i].id) {return i;}}printf("id = %d 的学生还没有录入\n", id);return -1;} *///增加学生信息--id
int add_stu()
{int stuid = -1;int i = 0;printf("请输入你的学生ID号:");scanf("%d", &stuid);if((i = query_stu_exist(stuid)) == -1){insert_stu(stuid);return 0;} else {printf("查询结果有误!!!\n");return -1;}}//插入一个学生的记录。根据学生的id号;
void insert_stu(int stuid)
{if (1000 == array_length) {printf("满员\n");exit(1);} else {stu[array_length].id = stuid;printf("请输入学生姓名:");scanf("%s", stu[array_length].name);printf("\n请输入学生成绩:");scanf("%f", &stu[array_length].grade);printf("\n请输入学生权限:");scanf("%d", &stu[array_length].lim);array_length++;students_length++;printf("id = %d 的学生录入成功!\n", stuid);
}
}//删除学生信息--id
int delete_stu()
{int stuid = -1;int i = -1;printf("请输入你要查询的学生ID号:");scanf("%d", &stuid);if((i = query_stu_exist(stuid)) == -1){printf("查询结果有误!!!\n");return -1;} else {stu[i].id = -2;printf("id = %d 的学生删除成功!\n", stuid);students_length--;}return 0;
}//修改学生信息--id
int change_stu()
{int stuid = -1;int i = -1;printf("请输入你的学生ID号:");scanf("%d", &stuid);if((i = query_stu_exist(stuid)) == -1){printf("查询结果有误!!!\n");return -1;} else {printf("请输入学生姓名:");scanf("%s", stu[i].name);printf("\n请输入学生成绩:");scanf("%f", &stu[i].grade);printf("\n请输入学生权限:");scanf("%d", &stu[i].lim);printf("id = %d 的学生修改成功!\n", stuid);}return 0;}//初始化
void init()
{int count = 0;int operation = -1;while (1) {printf("\n");printf("********************************\n");printf("欢迎来到小豹学生信息管理系统:\n");printf("查询学生信息请输入 【 1 】\n");printf("修改学生信息请输入 【 2 】\n");printf("删除学生信息请输入 【 3 】\n");printf("添加学生信息请输入 【 4 】\n");printf("打印  数据库  数据 【 5 】\n");printf("打印 所有 学生信息 【 6 】\n");printf("********************************\n");printf("\n");printf("请输入您的操作:");scanf("%d", &operation);switch (operation) {case 1:query_stu();break;case 2:change_stu();break;case 3:delete_stu();break;case 4:add_stu();break;case 5:print_db();break;case 6:print_students();break;default:printf("您的输入有误,请重新输入您的operation:");count++;break;}if (5 == count) {printf("滚、、、\n");count = 0;break;}}
}//打印数据库
void print_db()
{printf("共插入有%d条记录!\n", array_length);for (int i = 0; i < array_length; i++) {printf("id = %d, name = %s, grade = %f, lim = ** \n",stu[i].id, stu[i].name, stu[i].grade);}
}//打印所有学生信息
void print_students()
{printf("共有%d个学生记录在小豹系统中!\n", students_length);for (int i = 0; i < array_length; i++) {if (-2 != stu[i].id) {printf("id = %d, name = %s, grade = %f, lim = ** \n",stu[i].id, stu[i].name, stu[i].grade);}   }
}//打印一个学生的信息。。。
void print_stu(int id)
{printf("id = %d, name = %s, grade = %f, lim = ** \n",stu[id].id, stu[id].name, stu[id].grade);}int main(int argc, char const *argv[])
{init();return 0;
}

C语言学生信息管理系统相关推荐

  1. c语言学生信息系统 完整版,C语言 学生信息管理系统(完整版).docx

    C语言 学生信息管理系统(完整版) 电子科技大学成都学院 程序综合设计论文 论文题目 学生信息管理系统 学生姓名 魏国 学 号 1340840625 专 业 机械设计制造及其自动化 系(分院) 电子工 ...

  2. 大一c语言学生信息管理系统课程设计

    使用命令行操作, 每次操作结束后,代码中加入清屏命令,给人一种有界面的感觉. 大一学c语言,现在回过头来看, 觉得当时什么图形界面啥的都没学, 怎么写课程设计. 结果我还是当时班上写得最棒的黑框框毕业 ...

  3. C语言学生信息管理系统(结构体数组,文件)

    C语言学生信息管理系统(结构体数组,文件) 这是初学时写的一个程序,比较菜,不喜勿喷.在一个结构体里定义结构体内所有的信息(如果信息也需要分类则可以再定义一个结构体并在当前结构体内声明,我的这个代码在 ...

  4. 显示学生信息的C语言,学生信息管理系统C语言.doc

    学生信息管理系统C语言 学生信息管理系统 摘要 由于学校规模进一步扩大,学生人数逐年上升,学生信息的管理也变得越来越复杂,切实有效的把学生信息管理系统引入学校教务管理中,对于促进学校管理制度和提高学校 ...

  5. c语言学生信息结构体录入文件,C语言—学生信息管理系统

    学习了C语言结构体,链表和文件的知识之后,就可以做出一个学生信息管理系统了,下面的是我在刚学习完这块知识后写出来的,基本没什么界面,不过 能够实现  录入,添加,插入,遍历,删除,查询,并且保存到本地 ...

  6. C语言学生信息管理系统第二版(附带密码登录模式)

    这几天准备复习一下学习的C语言,进行一门语言最好的复习方式我认为就是用这门语言做一个作品出来,这样可能方方面面的知识都有可能用到,于是我花了几天写了一个学生信息管理系统,这是第二版操作系统,我又增加了 ...

  7. C语言学生成绩管理系统文档版,C语言学生信息管理系统(完整版)总结.docx

    电子科技大学成都学院 程序综合设计论文 论文题目 学生信息管理系统 学生姓名 魏国 学 号 1340840625 专 业 机械设计制造及其自动化 系(分院) 电子工程系 授课教师 杜娥 2015年12 ...

  8. C语言系统讲解,C语言学生信息管理系统讲解.doc

    C语言课程设计报告 学生姓名:田俊 学生学号:0909090610 所在班级: 电气信息0906 课程设计题目: 学生信息管理系统 课程设计目标和要求: 巩固和加强<C语言程序设计>课程的 ...

  9. 学生管理程序c语言数组,c语言学生管理系统(c语言学生信息管理系统)

    要求:1记录学生班级姓名,性别,职务住址情况,数据输入数据删除排序查. #include /*引用库函数*/ #include #include #include typedef struct /*定 ...

  10. c语言添加学生信息代码,《C语言-学生信息管理系统(代码)》.doc

    X X 师 范 大 学 实 验 报 告 课 程 C语言课程设计 任课老师 学 号 姓 名 院 系 _______年______月至_______年_______月 注意事项 使用C语言,代码已在vs中 ...

最新文章

  1. 如何日赚100万美金?(附“标准”答案)
  2. NYOJ 252 01串 dp
  3. 手机怎么进ph_明日发布,华为鸿蒙OS2.0手机版特色功能曝光
  4. 拉氏变换及复域传递函数
  5. 阿里一面,说说你对Mysql死锁的理解
  6. 信用评分卡模型分析(基于Python)--python实现
  7. java voip 的sip服务器搭建_SIP协议开源SIP服务器搭建和客户端安装
  8. 有一个测试微信删除软件叫wool,如果出现这三种情况,便可以删除这些微信好友,此操作适用所有人...
  9. php 公众号多图文消息,微信公众号怎么发布号多图文消息?微信公众号发布号多图文消息的方法...
  10. mysql 分库分表中间件 mycat_Mysql—分库分表中间件(Mycat)
  11. XWPFTemplate生成根据模板文件填充内容生成word文件
  12. node.js + busboy 多文件上传
  13. Jetbot小车系列文章学习
  14. 华为鸿蒙几点开发布会,华为鸿蒙发布会6月2日直播几点开始?附直播观看入口...
  15. PDF格式分析(五十九) Color Spaces 颜色空间
  16. Java遍历JSON
  17. .net core identity集成微信授权登录
  18. ICSharpCode.SharpZipLib压缩解压
  19. 2.4 Spring Framework 5.x之DI(依赖注入)
  20. XCTF-ms0_01

热门文章

  1. 我是谁,读《薇娅:人生是用来改变的》有感
  2. 0.泡妞与设计模式(一)工厂模式
  3. yum不能使用了,怎么办?记下来!!!
  4. RabbitMQ集群搭建(七)
  5. “我那个工资5000的朋友,一年存了20万”
  6. htc 8x android,颠覆之作的探究,HTC 8X拆解多图欣赏
  7. 史上最全的FTP网址
  8. CAP理论/AP架构/CP架构
  9. STK Components规格书
  10. 一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在 第10次落地时,共经过多少米?第10次反弹多高?