学生宿舍信息管理系统

#include"stdio.h"

#include"stdlib.h"

#include"string.h"

#include"conio.h"

#define PAGE 3

#define MAX 1000

#define N 5

int k=0;

/*结构体类型*/

typedef struct

{   int num;/*宿舍号*/

char name[20];/*姓名*/

char sex[5];/*性别*/

int age;/*年龄*/

char studentclass[20];/*班级*/

int score;/*成绩*/

}STUDENTS;

int read_file(STUDENTS stu[])

{ FILE *fp;

int i=0;

if((fp=fopen("stu.txt","rt"))==NULL)

{printf("\n\n*****库存文件不存在!请创");

return 0;

}

while(feof(fp)!=1)

{

fread(&stu[i],sizeof(STUDENTS),1,fp);

if(stu[i].num==0)

break;

else

i++;

}

fclose(fp);

return i;

}

void save_file(STUDENTS stu[],int sum)

{FILE*fp;

int i;

if((fp=fopen("stu.txt","wb"))==NULL)

{printf("写文件错误!\n");

return;

}

for(i=0;i<sum;i++)

if(fwrite(&stu[i],sizeof(STUDENTS),1,fp)!=1)

printf("写文件错误!\n");

fclose(fp);

}

/*创建学生信息*/

int input(STUDENTS stu[])

{  int i,x;

for(i=0;i<1000;i++)

{

system("cls");

printf("\n\n                 录入宿舍信息  (最多%d个)\n",MAX);

printf("               ----------------------------\n");

printf("\n                     第%d个宿舍",k+1);

printf("\n 请输入宿舍号:");

scanf("%d",&stu[k].num);

printf("\n 请输入社长姓名:");

scanf("%s",stu[k].name);

printf("\n 请输入人数:");

scanf("%s",stu[k].sex);

printf("\n 请输入班导:");

scanf("%d",&stu[k].age);

printf("\n 请输入班级:");

scanf("%s",stu[k].studentclass);

printf("\n 请输宿舍成绩:");

scanf("%d",stu[k].studentclass);

printf("\n 请按1键返回菜单或按0键继续创建");

scanf("%d",&x);

if(x)

break;

}

return k;

}

/*删除学生信息*/

void deletel(STUDENTS stu[])

{ system("cls");

char Stuname2[20];

int i,j;

printf("请输入宿舍号:");

scanf("%s",Stuname2);

printf("\n");

for(i=0;i<k;i++)

if(strcmp(stu[i].name,Stuname2)==0)

for(j=0;j<20;j++)

stu[i].name[j]=stu[i+1].name[j];

k--;

printf("删除成功\n");

printf("按任意键加回车返回主菜单!");

scanf("%d",&i);

getchar();

}

/*打印学生信息*/

void output(STUDENTS stu[])

{  system("cls");

int i;

for(i=0;i<k;i++)

printf("宿舍号:%d,社长姓名:%s,人数:%s,班导:%d,班级:%s,宿舍成绩: %d\n",stu[i].num,stu[i].name,

stu[i].sex,stu[i].age,stu[i].studentclass,stu[i].score);

printf("按任意键加回车返回主菜单!");

scanf("%d",&i);

getchar();

}

/*查询学生信息*/

void inquire(STUDENTS stu[])

{ int i;

int num;

system("cls");

printf("     \n\n请输入您要查找的宿舍号");

scanf("%d",&num);

for(i=0;i<k;i++)

if(num==stu[i].num)

printf("\n\n\n宿舍号:%d,社长姓名:%s,人数:%s,班导:%d,所属班级:%s,宿舍成绩: %d\n",stu[i].num,stu[i].name,

stu[i].sex,stu[i].age,stu[i].studentclass,stu[i].score);

printf("按任意键加回车返回主菜单!");

scanf("%d",&i);

getchar();

}

/*修改学生信息*/

void change(STUDENTS stu[])

{  int num,i,choice;

system("cls");

printf("\n\n\n      请输入您要修改的宿舍信息");

scanf("%d",&num);

for(i=0;i<k;i++)

{ if(num==stu[i].num)

printf("\n宿舍号:%d,社长姓名:%s,人数:%s,班导:%d,所属班级:%s,宿舍成绩: %d\n",stu[i].num,stu[i].name,

stu[i].sex,stu[i].age,stu[i].studentclass,stu[i].score);

printf("\n\n\n     ********请输入您想要修改的数据********\n\n");

printf("                1. 宿舍号\n\n");

printf("                2. 社长姓名\n\n");

printf("                3. 人数\n\n");

printf("                4. 班导\n\n");

printf("                5. 所属班级\n\n");

printf("                6. 宿舍成绩\n\n");

printf("                 请选择(1-6):");

scanf("%d",&choice);

switch(choice)

{case 1:{

printf("\n   请输入你改的新宿舍号");

scanf("%d",&stu[i].num);

break;

}

case 2:{

printf("\n   请输入你改的宿舍长");

scanf("%s",stu[i].name);

break;

}

case 3:{

printf("\n   请输入你改的宿舍人数");

scanf("%s",stu[i].sex);

break;

}

case 4:{

printf("\n   请输入你改的班导");

scanf("%d",&stu[i].age);

break;

}

case 5:{

printf("\n   请输入你改的新班级");

scanf("%s",stu[i].studentclass);

break;

}

case 6:{

printf("\n   请输入你改的新宿舍成绩");

scanf("%d",&stu[i].score);

break;

}

}

printf("宿舍号:%d,姓名:%s,性别:%s,年龄:%d,班级:%s,成绩: %d\n",stu[i].num,stu[i].name,

stu[i].sex,stu[i].age,stu[i].studentclass,stu[i].score);

printf("按任意键加回车返回主菜单!");

scanf("%d",&i);

break;

}

}

/*学生成绩信息排名*/

void sort(STUDENTS stu[])

{  int i,j,n=1,x;

system("cls");

int t;

for(i=0;i<k-1;i++)

for(j=i+1;j<k;j++)

if(stu[i].score<stu[j].score)

{ t=stu[i].score;

stu[i].score=stu[j].score;

stu[j].score=t;

t=stu[i].num;

stu[i].num=stu[j].num;

stu[j].num=t;

}

for(i=0;i<k;i++)

printf("排名    宿舍号    成绩\n %d       %d       %d\n",n++,stu[i].num,stu[i].score);

printf("按任意键加回车返回主菜单!");

通过这次学习我学会了从其他代码改为对自己有用的代码,所以这代码是很灵活的,现在改的是信息以后可以该变量一次一次在进步,往自己的专业发展。

时间: 2024-10-25 06:57:25

学生宿舍信息管理系统的相关文章

学生宿舍信息查询

#include"stdio.h"#include"stdlib.h"#include"string.h"#include"conio.h"#define PAGE 3#define MAX 1000#define N 5int k=0;  /*结构体类型*/typedef struct  {   int num;/*宿舍号*/    char name[20];/*姓名*/ char sex[5];/*性别*/ int ag

学生个人信息管理系统

需求:学生个人信息管理系统分析:学生管理:需要明确学生的所有信息. 学生的信息有哪些?姓名 年龄 性别 电话 住址 学号 各科成绩 需要一个类封装每个学生的这些信息 学生信息的管理: 针对每个学生需要可以对他/她的信息进行修改和查询,对每个学生对象可以增删操作. 需要提供 学生信息各种操作 选择 的提示信息,这里我们统一使用控制台. 首先学生类对象封装 package studentmanage; public class Student {// 学生的信息有哪些?姓名 年龄 性别 电话 住址

C语言学生学籍信息管理系统源码附赠实验报告

一.课程设计目标 C语言课程设计的目的是通过课程设计的综合训练,培养学生实际分析问题.编程和动手能力,最终目标是通过这种形式,帮助学生系统掌握该门课程的主要内容,更好地完成教学任务.本课程设计具有如下特点:重点在于C语言的基本特征上,涵盖了C语言的重要基础知识.结合了实际应用的要求,使课程设计既涵盖知识点,又接近工程实际需要.通过激发学习兴趣,调动学生主动学习的积极性,并引导他们根据实际编程要求,训练自己实际分析问题的能力以及编程能力,并养成良好的编程习惯. 另外,在实际编程中,为了提高编程质量

宿舍信息管理系统

随便写的,没有数据结构算法的核心,是函数的拼凑. #include<cstdio> #include<iostream> #include<algorithm> #include<string> #include<windows.h> using namespace std; #define MAX 100 int Total; int domes[MAX][MAX]; struct edg{ //构造结构体,创建学生信息的结构体数组,其中的信息

校园学生消费信息管理系统(C++)

本人第一次写博客,也不知道该怎么写,只能按着自己能想到的思路来分享一下自己做的东西. 这个程序其实是我在大一下学期c++要求写的课程设计,奈何那时懂的不多,加上不好好学习,没能完整实现里面要求的功能.现在回过头来写,实在有不少感慨.这个课程设计要求编写代码实现校园学生消费信息记录,实现最基本的删除.修改.查询等功能,后来我添加了将信息保存到文件的功能. 说一下实现这个系统的思路吧.结构体是一个很好用的数据结构,将不同基本数据类型任意结合,是存储学生基本信息的最好结构.那么怎么对这个结构体进行管理

C语言 学生宿舍管理系统

经过上次的飞机游戏制作,使我感觉到C语言程序设计,更加的有趣,也使我对这门课程有了更深的理解和认识.这次我们学习了学习C语言操作文件永久保存数据和基于函数的结构化大型程序的编写方法.这次的学习也比较上次来说显得有些复杂. 这次要做的是一个关于书本的管理系统.可以让我们更加方便的去利用程序查找书本存放的位置和一些基本的信息. 一. C语言文件的操作 1. 文件操作的基本方法: C语言将计算机的输入输出设备都看作是文件.例如,键盘文件.屏幕文件等. 你应该还记得,向屏幕输出一个信息,例如经典的"He

学生信息管理系统改编

老师给的代码: #include"stdio.h" #include"stdlib.h" #include"string.h" #include"conio.h" #define PAGE 3 #define MAX 1000 #define N 5 int k=0; /*结构体类型*/ typedef struct {   int num;/*学号*/ char name[20];/*姓名*/ char sex[5];/*性

学生宿舍管理系统 &nbsp; &nbsp; &nbsp; 150809205

#include"stdio.h" #include"stdlib.h" #include"string.h" #include"conio.h" #define PAGE 3 #define MAX 1000 #define N 5 int k=0; /*结构体类型*/ typedef struct {   int num;/*学号*/ char name[20];/*姓名*/ char sex[5];/*性别*/ int

学生宿舍管理系统概要设计说明书

1. 编写目的 在完成了针对<学生信息管理系统>软件市场的前期调查,同时与多位软件使用者进行了全面深入地探讨和分析的基础上,提出了这份概要设计说明书. 此概要设计说明书对<学生信息管理系统>软件做了全面细致的用户需求分析,明确所要开发的软件应具有的功能.性能与界面,使系统分析人员及软件开发人员能清楚地了解用户的需求,并在此基础上进一步完成后续设计与开发工作.本说明书的预期读者为学校管理员.需求分析人员.测试人员.项目管理定义 . 2. 范围 2.1 系统主要目标 在科技快速发展的今