求一个简单的宿舍管理系统 C/C++
加QQ,有偿解决你的问题
#include
#include
#include
#include
using namespace std;
class student
{
private:
long int stu_num; //学号,宿舍号
char stu_name[40]; //姓名
char class_name[40]; //班别
char house_name[20]; //宿舍
public:
student()
{
stu_num=0;
stu_name[0] =0;
class_name[0] =0;
house_name[0] =0;
}
student::student(long a, char * b,char *c,char *d)
{
Setdata(a , b, c, d);
}
char * Getstuname(void) //姓名查找
{
return stu_name ;
}
long Getstunum(void) //学号查找
{
return stu_num;
}
char * Gethousename(void) //宿舍号查找
{
return house_name;
}
char * Getclassname(void) //按班级查找
{
return class_name;
}
void Setdata(long a, char *b,char *c,char *d)
{
stu_num = a;
strcpy(stu_name, b);
strcpy(class_name, c);
strcpy(house_name, d);
}
void Show(void)
{
cout<<"学号:"<<stu_num<<""<<"姓名:"<<stu_name<<"";
cout<<"班级:"<<class_name<<""<<"宿舍:"<<house_name<<"
";
}
};
void main(void)
{
student s1;
int flags=0;
long stu_num; //学号
char stu_name[40]; //姓名
char class_name[40]; //班级
char house_name[20]; //宿舍
time_t t;
time(&t);
ifstream file1;
ofstream file3;
char flag = 'y';
cout<< "---------------------------------学生成绩管理系统-------------------------------"<<endl;
cout<< " 时间:" << ctime(&t);
while( flag=='y' || flag=='Y')
{ //由flag控制循环
cout<<"--------------------------------------------------------------------------------
";
cout<<" 1:注册学生!
";
cout<<" 2:按学号查看学生信息!
";
cout<<" 3:按宿舍号查看学生信息!
";
cout<<" 4:按姓名查看学生信息!
";
cout<<" 5:按班级查看学生信息!
";
cout<<" 6:显示全部学生信息
";
// cout<<" 7:按学号修改学生信息
";
// cout<<" 8:按学号删除学生信息!
";
cout<<"--------------------------------------------------------------------------------
";
cout<<"请输入选择:";
char choice;
cin>>choice;
switch(choice)
{
case '1':
file3.open("c:\\stu.dat",ios::app|ios::binary);
input: flags=0;
cout<<"输入学号:";
cin>>stu_num;
while (stu_num999999)
{
cin.clear();
rewind(stdin);
cout << "你输入的学号不正确,请输入一个六位数的学号" << endl;
cout << "学号:";
cin >> stu_num;
}
file1.open("c:\\stu.dat",ios::in | ios::binary | ios::beg);//按读方式打开文件
while(!file1.eof())
{
int n;
file1.read((char *)&s1,sizeof(student));
n=file1.gcount();
if(n==sizeof(student))
{
if(s1.Getstunum()==stu_num)
flags=1;
}
}
file1.clear();
file1.close();
if (flags==1)
{
cin.clear();
cout << "学号重复,请重输入!" << endl;
goto input;
}
cout>stu_name;
cout>class_name;
cout>house_name;
s1.Setdata(stu_num,stu_name,class_name,house_name);
file3.write((char*)&s1,sizeof(s1));
file3.clear();
file3.close();
break;
case '2': //按学号查找
cout<<"请输入学生的学号:";
cin>>stu_num;
while (stu_num999999)
{
cin.clear();
rewind(stdin);
cout << "你输入的学号不正确,请输入一个六位数的学号" << endl;
cout << "学号:";
cin >> stu_num;
}
file1.open("c:\\stu.dat",ios::in | ios::binary | ios::beg);//按读方式打开文件
while(!file1.eof())
{
int n;
file1.read((char *)&s1,sizeof(student));
n=file1.gcount();
if(n==sizeof(student))
{
if(s1.Getstunum()==stu_num) //显示学生信息
{
s1.Show();
flags=1;
}
}
}
file1.clear();
file1.close();
if (flags==0)
cout << "没有找学号为:"<< stu_num <<"的学生记录!" << endl;
flags=0;
break;
case '3': //按宿舍号查找
cout<<"请输入宿舍号:";
cin>>house_name;
file1.open("c:\\stu.dat",ios::in | ios::binary | ios::beg);//按读方式打开文件
while(!file1.eof())
{
int n;
file1.read((char *)&s1,sizeof(student));
n=file1.gcount();
if(n==sizeof(student))
{
if(strcmp(s1.Gethousename(),house_name)==0)
{
s1.Show();
flags=1;
}
}
}
file1.clear();
file1.close();
if (flags==0)
cout << "没有找到宿舍为:"<< house_name <<"的学生记录!" << endl;
flags=0;
break;
case '4': //按姓名查找
cout<<"请输入学生姓名:";
cin>>stu_name;
file1.open("c:\\stu.dat",ios::in | ios::binary | ios::beg);//按读方式打开文件
while(!file1.eof())
{
int n;
file1.read((char *)&s1,sizeof(student));
n=file1.gcount();
if(n==sizeof(student))
{
if(strcmp(s1. Getstuname(),stu_name)==0)
{
s1.Show();
flags=1;
}
}
}
file1.clear();
file1.close();
if (flags==0)
cout << "没有找到姓名为:"<< stu_name <<"的学生记录!" << endl;
flags=0;
break;
case '5': //按班级查找
cout<<"请输入班级名称:";
cin>>class_name;
file1.open("c:\\stu.dat",ios::in | ios::binary | ios::beg);//按读方式打开文件
while(!file1.eof())
{
int n;
file1.read((char *)&s1,sizeof(student));
n=file1.gcount();
if(n==sizeof(student))
{
if(strcmp(s1. Getclassname(),class_name)==0)
{
s1.Show();
flags=1;
}
}
}
file1.clear();
file1.close();
if (flags==0)
cout << "没有找到该班级为:"<< class_name <<"的学生记录!" << endl;
flags=0;
break;
case '6': //显示全部学生信息
file1.open("c:\\stu.dat",ios::in | ios::binary);//按读方式打开文件
while(!file1.eof())
{
int n;
file1.read((char *)&s1,sizeof(student));
n=file1.gcount();
if(n==sizeof(student))
{
s1.Show();
flags=1;
}
}
file1.clear();
file1.close();
if (flags==0)
cout << "数据库没有记录!" << endl;
flags=0;
break;
// case '7': //修改学生信息按学号
// flags=0;
// cout<<"请输入要修改学生的学号:";
// cin>>stu_num;
// while (stu_num999999)
// {
// cin.clear();
// rewind(stdin);
// cout << "你输入的学号不正确,请输入一个六位数的学号" << endl;
// cout << "学号:";
// cin >> stu_num;
// }
// file1.open("c:\\stu.dat",ios::in | ios::binary | ios::beg);//按读方式打开文件
// while(!file1.eof())
// {
// int n;
// file1.read((char *)&s1,sizeof(student));
// n=file1.gcount();
// if(n==sizeof(student))
// {
// if(s1.Getstunum()==stu_num)
// {
// file3.open("c:\\stu.dat",ios::out|ios::binary);
// cout>stu_name;
// cout>class_name;
// cout>house_name;
// s1.Setdata(stu_num,stu_name,class_name,house_name);
// file3.write((char*)&s1,sizeof(s1));
// file3.close();
// flags=1;
// }
// }
// }
// file1.clear();
// file1.close();
// if (flags==0)
// {
// cout << "没有此学生记录,不能进行修改!" << endl;
// break;
// }
// break;
// case '8': //删除学生信息按学号
default: flag = 'n';
break;
}
}
cout << "谢谢您的使用!" << endl;
}
#include<stdio.h> /*引用库函数*/
#include<stdlib.h>
#include<ctype.h>
#include<string.h>
typedef struct /*定义结构体数组*/
{
int num; /*房间号*/
char area[20]; /*面积*/
char num_contain[20];//可住宿人数
char num_live[20];//实际住宿人数
char repair_situation[20]; /*修缮状况*/
}Apartment;
Apartment stu[80]; /*结构体数组变量*/
int menu_select() /*菜单函数*/
{
char c;
do
{
system("cls"); /*运行前清屏*/
printf("\t\t****学生信息管理系统****\n"); /*菜单选择*/
printf("\t\t | 1. 输入档案 |\n");
printf("\t\t | 2. 显示所有档案 |\n");
printf("\t\t | 3. 插入新档案 |\n");
printf("\t\t | 4. 删除档案 |\n");
printf("\t\t | 5. 查询 |\n");
printf("\t\t | 6. 排序 |\n");
printf("\t\t | 7. 修改 |\n");
printf("\t\t | 0. 退出 |\n");
printf("\t\t*****************************************\n");
printf("\t\t\t输入你的选择(0-7):");
c=getchar(); /*读入选择*/
}while(c<'0'||c>'7');
return(c-'0'); /*返回选择*/
}
int Input(Apartment stud[],int n) /*输入若干条记录*/
{
int i=0;
char sign,x[10]; /*x[10]为清除多余的数据所用*/
while(sign!='n'&&sign!='N') /*判断*/
{
printf("\t\t\t房间号:"); /*交互输入*/
scanf("\t\t\t%d",&stud[n+i].num);
printf("\t\t\t面积:");
scanf("\t\t\t%s",stud[n+i].area);
printf("\t\t\t可住宿人数:");
scanf("\t\t\t%s",stud[n+i].num_contain);
printf("\t\t\t实际住宿人数:");
scanf("\t\t\t%s",stud[n+i].num_live);
printf("\t\t\t修缮状况:");
scanf("\t\t\t%s",stud[n+i].repair_situation);
gets(x); /*清除多余的输入*/
printf("\t\t\t是否还要继续输入?(Y/N)");
scanf("\t\t\t%c",&sign); /*输入判断*/
i++;
}
return(n+i);
}
int Delete_a_record(Apartment stud[],int n) /*按房间号查找,删除一条记录*/
{
int s;
int i=0,j;
int a=0,b=0;
printf("\t\t\t输入要删除的房间号:"); /*交互式问寻*/
scanf("%d",&s);
while((stud[i].num!=s)&&i<n) i++; /*查找判断*/
if(i==n)
{
printf("\t\t\t没有发现!\n"); /*返回失败信息*/
return(n);
}
for(j=i;j<n-1;j++) /*删除操作*/
{
b=stud[j+1].num;
stud[j].num=b;
//strcpy(stud[j].area,stud[j+1].area);
strcpy(stud[j].area,stud[j+1].area);
strcpy(stud[j].num_contain,stud[j+1].num_contain);
strcpy(stud[j].num_live,stud[j+1].num_live);
strcpy(stud[j+1].repair_situation,stud[j].repair_situation) ;
}
printf("\t\t\t删除成功!\n"); /*返回成功信息*/
return(n-1);
}
void Query_a_record(Apartment stud[],int n) /*查找并显示一个记录*/
{
int s;
int i=0;
printf("\t\t\t请输入房间号:"); /*交互式输入*/
scanf("\t\t\t%d",&s);
while((stud[i].num!=s)&&i<n) i++; /*查找判断*/
if(i==n)
{
printf("\t\t\t没有发现!\n"); /*输入失败信息*/
return;
}
printf("\t\t房间号:%d\n",stud[i].num);
printf("\t\t面积:%s\n",stud[i].area);
printf("\t\t可住宿人数:%s\n",stud[i].num_contain);
printf("\t\t实际住宿人数:%s\n",stud[i].num_live); /*输出该学生信息*/
printf("\t\t修缮状况:%s\n",stud[i].repair_situation);
}
void Display(Apartment stud[],int n) /*显示所有记录*/
{
int i;
printf("\t\t\t-----------------------------------\n"); /*格式头*/
printf("\t\t\t宿舍信息\n");
printf("\t\t\t-----------------------------------\n");
printf("\t\t房间号\t面积\t可住宿人数\t\t实际住宿人数\t\t修缮状况\n");
printf("\t\t\t-----------------------------------\n");
for(i=1;i<n+1;i++) /*循环输入*/
{
printf("\t\t%-6d% -15s%-12s%-15s%-12s\n",stud[i-1].num,stud[i-1].area,stud[i-1].num_contain,stud[i-1].num_live,stud[i-1].repair_situation);
if(i>1&&i%10==0) /*每十个暂停*/
{
printf("\t\t\t-----------------------------------\n"); /*格式*/
printf("\t\t\t");
system("pause");
printf("\t\t\t-----------------------------------\n");
}
}
printf("\t\t\t");
system("pause");
}
int Insert_a_record(Apartment stud[],int n) /*插入一条记录*/
{
int i=0;
char sign,x[10]; /*x[10]为清除多余的数据所用*/
while(sign!='n'&&sign!='N') /*判断*/
{
printf("\t\t\t房间号:"); /*交互输入*/
scanf("\t\t\t%d",&stud[n+i].num);
printf("\t\t\t面积:");
scanf("\t\t\t%s",stud[n+i].area);
printf("\t\t\t可住宿人数:");
scanf("\t\t\t%s",stud[n+i].num_contain);
printf("\t\t\t实际住宿人数:");
scanf("\t\t\t%s",stud[n+i].num_live);
printf("\t\t\t修缮状况:");
scanf("\t\t\t%s",stud[n+i].repair_situation);
gets(x); /*清除多余的输入*/
printf("\t\t\t是否还要继续输入?(Y/N)");
scanf("\t\t\t%c",&sign); /*输入判断*/
i++;
}
return(n+i);
}
void Sort_by_num(Apartment stud[],int n) /*按房间号排序*/
{
int s=0;
int a=0,b=0;
printf("\t\t | 请选择你要的排序方式 |\n");
printf("\t\t | 1. 按房间号排序 |\n");
printf("\t\t | 2. 按面积排序 |\n");
printf("\t\t*****************************************\n");
printf("\t\t\t输入你的选择(1-2):");
scanf("%d",&s);
int i=0,j=0;//,*p,*q,s;
int x=0;
char t[10];
//for(i=0;i<n-1;i++) /*冒泡法排序*/
//for(j=0;j<n-1-i;j++)
for(i=0;i<n-1;i++) /*冒泡法排序*/
{
for(j=0;j<n-1-i;j++)
{
if(s==1&&stud[j].num-stud[j+1].num>0)
{
b=stud[j+1].num;
stud[j+1].num=stud[j].num;
stud[j].num=b;
strcpy(t,stud[j+1].area);
strcpy(stud[j+1].area,stud[j].area);
strcpy(stud[j].area,t);
strcpy(t,stud[j+1].num_contain);
strcpy(stud[j+1].num_contain,stud[j].num_contain);
strcpy(stud[j].num_contain,t);
strcpy(t,stud[j+1].num_live);
strcpy(stud[j+1].num_live,stud[j].num_live);
strcpy(stud[j].num_live,t);
// strcpy(t,stud[j+1].repair_situation);
strcpy(stud[j+1].repair_situation,stud[j].repair_situation);
// stud[j+1].repair_situation,stud[j].repair_situation;
strcpy(stud[j].repair_situation,t);
// strcpy(stud[j].repair_situation,t);
}
else if(s==2&&stud[j+1].area-stud[j].area>0)
{
b=stud[j+1].num;
stud[j+1].num=stud[j].num;
stud[j].num=b;
strcpy(t,stud[j+1].repair_situation);
strcpy(stud[j+1].repair_situation,stud[j].repair_situation);
strcpy(stud[j].repair_situation,t);
strcpy(t,stud[j+1].num_contain);
strcpy(stud[j+1].num_contain,stud[j].num_contain);
strcpy(stud[j].num_contain,t);
strcpy(t,stud[j+1].num_live);
strcpy(stud[j+1].num_live,stud[j].num_live);
strcpy(stud[j].num_live,t);
// strcpy(t,stud[j+1].area);
strcpy(stud[j+1].area,stud[j].area);
// stud[j+1].area,stud[j].area;
strcpy(stud[j].area,t);
// strcpy(stud[j].sarea,t);
}
}
}
Display(stu,n);
}
void Xiugai_record(Apartment stud[],int n) /*修改信息*/
{
int s;
char t[500];
int i=0,a=0,x=0,b=0;
printf("\t\t\t请输入房间号:"); /*交互式输入*/
scanf("\t\t\t%d",&s);
while((stud[i].num!=s)&&i<n) i++; /*查找判断*/
if(i==n)
{
printf("\t\t\t没有发现!\n"); /*输入失败信息*/
return;
}
printf("\t\t房间号:%d\n",stud[i].num);
printf("\t\t面积:%s\n",stud[i].area);
printf("\t\t可住宿人数:%s\n",stud[i].num_contain);
printf("\t\t实际住宿人数:%s\n",stud[i].num_live); /*输出该学生信息*/
printf("\t\t修缮状况:%s\n",stud[i].repair_situation);
printf("\t\t | 请选择你要修改的数据 |\n");
printf("\t\t | 1. 房间号 |\n");
printf("\t\t | 2. 面积 |\n");
printf("\t\t | 3. 可住宿人数 |\n");
printf("\t\t | 4. 实际住宿人数 |\n");
printf("\t\t | 5. 修缮状况 |\n");
printf("\t\t*****************************************\n");
printf("\t\t\t输入你的选择(1-5):");
scanf("%d",&a);
if(a==1)
{
printf("\t\t\t请输入要修改的值");
scanf("%d",&b);
stud[i].num=b;
}
else if(a==2)
{
printf("\t\t\t请输入要修改的值\n");
scanf("%s",t);
strcpy(stud[i].area,t);
}
else if(a==3)
{
printf("\t\t\t请输入要修改的值\n");
scanf("%s",t);
strcpy(stud[i].num_contain,t);
}
else if(a==4)
{
printf("\t\t\t请输入要修改的值\n");
scanf("%s",t);
strcpy(stud[i].num_live,t);
}
else if(a==5)
{
printf("\t\t\t请输入要修改的值\n");
scanf("%s",t);
strcpy(stud[i].repair_situation,t);
}
}
void main() /*主函数*/
{
int n=0;
for(;;)
{
switch(menu_select()) /*选择判断*/
{
case 1:
printf("\t\t\t输入信息\n"); /*输入若干条记录*/
n=Input(stu,n);
break;
case 2:
printf("\t\t\t显示所有信息\n"); /*显示所有记录*/
Display(stu,n);
break;
case 3:
//printf("\t\t\tSort\n");
//Insert_a_record(stu,n); /*按学号排序*/
n=Insert_a_record(stu,n);
printf("\t\t\t插入成功!\n");
printf("\t\t\t");
system("pause");
break;
case 4:
printf("\t\t\t删除信息\n");
n=Delete_a_record(stu,n); /*按姓名查找,删除一条记录*/
printf("\t\t\t");
system("pause");
break;
case 5:
printf("\t\t\t查找\n");
Query_a_record(stu,n); /*查找并显示一个记录*/
printf("\t\t\t");
system("pause");
break;
case 6:
printf("\t\t\t查找\n");
Sort_by_num(stu,n); /*按学号排序*/
printf("\t\t\t");
system("pause");
break;
case 7:
printf("\t\t\t修改\n");
Xiugai_record(stu,n); /*按学号排序*/
printf("\t\t\t");
system("pause");
break;
case 0:
printf("\t\t\t再见!\n"); /*结束程序*/
printf("\t\t\t");
system("pause");
exit(0);
}
}
}
自己看看,我试过了,能行的
自己再改改,没有时间给你弄了...............
/*宿舍管理查询软件
为宿舍管理人员编写一个宿舍管理查询软件, 程序设计要求:
采用交互工作方式
建立数据文件 ,数据文件按关键字(姓名、学号、房号)进行排序(冒泡、选择、插入排序等任选一种)
查询菜单: (用二分查找实现以下操作)
按姓名查询
按学号查询
按房号查询
打印任一查询结果(可以连续操作)*/
# include <stdio.h>
#include<iomanip>
#include<fstream>
# include <stdlib.h>
# include <string.h>
# include <conio.h> //(键盘和屏幕) 输出输入函数的头文件
#include<iostream.h>
# define N 20
/*********************自定义函数声明部分**************************/
void showheader(); //声明显示表头部分
int menu(); //声明主菜单函数
int menu3(); //声明插入功能子菜单函数
int menu5(); //声明查找功能子菜单函数
int quanxian(); //声明用户权限管理函数
void SavePass(); //密码显示为"*"的函数
struct student shuru(); //声明学生信息录入函数
void display(struct student); //声明显示函数
void sort(struct student stu[N],int); //声明排序函数
void charu(struct student stu[N],int); //声明插入函数
void chazhao1(struct student stu[N],int i); //声明按照学号查找函数
void chazhao2(struct student stu[N],int i); //声明按照姓名查找函数
void chazhao3(struct student stu[N],int i);//声明按照房间号查找
/*********定义结构体************/
struct student
{
/* 构造结构成员 */
int ID;
char name[15];
char sex;
int roomnum;
float score[3];
char *getSex()
{
if(sex=='g')
return "女";
else
return "男";
}
float Ave() //求平均成绩
{
return (score[0]+score[1]+score[2])/3;
}
student() //初始化成绩为0
{
score[0]=0;
score[1]=0;
score[2]=0;
}
};
/****************************主函数开始**************************/
void main()
{
struct student stu[N];
int count=0,m=0,j;
char ch,ch1;
int choice,choice3,choice4; //菜单选项及子菜单选项
int user;
do //此循环体控制用户信息输入错误后是否重输
{
user=quanxian(); //调用用户权限函数
system("cls");// 调用DOS下的清屏命令"cls"
if(user==1) //此条件结构判断用户权限输入是否正确
{
do //此循环体控制返回主菜单
{ ch1='n'; //如果用户将主菜单选择错误,可用此变量控制是否重输
choice=menu();
system("cls");
switch(choice) //此条件结构控制选择菜单功能后的操作
{
case 1: //输入学生信息
{
do //此循环体控制是否继续输入
{
cout<<"****************************** 学员信息录入 **********************************\n";
cout<<"请输入第"<<count+1<<"d个学员的成绩\n\n";
stu[count]=shuru(); //调用输入函数
cout<<"是否继续(y/n)";
fflush(stdin);// 刷新标准输入缓冲区,把输入缓冲区里的东西丢弃
ch=getchar();
count++;
system("cls");
}while(ch=='y');
system("pause");
break;
}
case 2: //显示排序好的学生信息
{
cout<<"****************************** 学员信息显示 **********************************\n";
cout<<"\n排序后的成绩如下:\n";
sort(stu,count);//调用排序函数
showheader();
for(j=0;j<count;j++)
{
display(stu[j]); //调用显示函数
}
system("pause");
system("cls");
break;
}
case 3://插入功能
{
while(choice3!=3) //此循环体控制是否退出子菜单
{
system("cls");
choice3=menu3(); //调用子菜单函数
system("cls");
if(choice3==1) //此条件结构控制子菜单选项
{
do //此循环体判断是否继续插入
{ cout<<"****************************** 学员信息插入 **********************************\n";
charu(stu,count); //调用插入函数
count++;
cout<<"是否继续插入?(y/n)";
fflush(stdin);
ch=getchar();
system("cls");
}while(ch=='y');
}
if (choice3==2) //此条件结构控制子菜单选项
{
cout<<"\n\n插入学生信息后如下:\n";
sort(stu,count);//调用排序函数
showheader();
for(j=0;j<count;j++)
{
display(stu[j]); //调用显示函数
}
system("pause");
}
//
}
break;
}
case 4://查找功能
{
while(choice4!=4) //控制是否继续查找
{
system("cls");
choice4=menu5(); //调用查找子菜单函数
system("cls");
if(choice4==1) //控制按照学号查找
{
chazhao1(stu,count);//调用按照学号查找的函数
system("cls");
}
if(choice4==2) //控制按照姓名查找
{
chazhao2(stu,count);//调用按照姓名查找的函数
system("cls");
}
if(choice4==3) //控制按照房间查找
{
chazhao3(stu,count);//调用按照房间查找的函数
system("cls");
}
system("pause");
}
break;
}
case 5://退出
{
cout<<"确认退出?(y/n)"; //让用户确认是否退出
fflush(stdin);
ch=getchar();
break;
}
default:
{
cout<<"\a\a警告:您输入错误,是否重输!(y/n)";
fflush(stdin);
ch1=getchar();
system("cls");
break;
}
}//end switch
}while(ch=='n'|| ch1=='y');//控制是否要退出系统
}//end if
if(user==0)
{
cout<<"\a\a警告:您的用户名或密码输入有误!是否重输?(y/n)";
}
fflush(stdin);
ch=getchar();
system("cls");
}while(ch=='y');
}
/*************************主函数结束*************************/
/*自定义输入函数*/
struct student shuru()
{
struct student stu;
cout<<"学号:";
cin>>stu.ID;
cout<<"姓名:";
cin>>stu.name;
cout<<"性别(g/b):";
fflush(stdin);
cin>>stu.sex;
cout<<"房间号:";
cin>>stu.roomnum;
cout<<"语文成绩:";
cin>>stu.score[0];
cout<<"数学成绩:";
cin>>stu.score[1];
cout<<"英语成绩:";
cin>>stu.score[2];
return stu;
}
/*自定义显示函数*/
void display(struct student stu)
{
int j;
cout<<"\t"<<stu.ID<<"\t";
cout<<stu.name<<"\t";
cout<<stu.getSex()<<"\t";
cout<<stu.roomnum<<"\t";
for(j=0;j<3;j++)
{
cout<<stu.score[j]<<"\t";
}
cout<<stu.Ave()<<endl;
}
/*自定义排序函数*/
void sort(struct student stu[N],int i)
{
int j,k;
struct student temp;
for(j=0;j<i;j++)
{
for(k=0;k<i-j-1;k++)
{
if((stu[k].ID)>(stu[k+1].ID))
{
temp=stu[k];
stu[k]=stu[k+1];
stu[k+1]=temp;
}
}
}
}
/*自定义插入函数*/
void charu(struct student stu[N],int k)
{
int i,l;
struct student in ;
in=shuru();//调用输入函数
for(i=0;i<k;i++)
{
if(in.Ave()>stu[i].Ave())
break;
}
for(l=k;l>i;l--)
{
stu[l]=stu[l-1];
}
stu[i]=in;
}
/*自定义主菜单函数*/
int menu()
{ int choice;
cout<<"\t\t****************************************************\n\n\t\t\t 欢迎进入学生宿舍管理查询系统 \n\n\t\t****************************************************\n\n";
cout<<"\t\t\t***************主菜单***************\n\n";
cout<<"\t\t\t\t1> 学生信息录入\n\n";
cout<<"\t\t\t\t2> 学生信息显示\n\n";
cout<<"\t\t\t\t3> 插入学生信息\n\n";
cout<<"\t\t\t\t4> 查找学生信息\n\n";
cout<<"\t\t\t\t5> 退出\n";
cout<<"\n\n请选择功能选项:";
cin>>choice;
return choice;
}
/*自定义插入功能子菜单函数*/
int menu3()
{ cout<<"\t*******************这里显示的是插入功能子菜单*******************\n\n";
cout<<"\t\t\t\t1、插入学生信息\n\n";
cout<<"\t\t\t\t2、显示插入后的学生信息\n\n";
cout<<"\t\t\t\t3、退出子菜单,返回上一级菜单\n\n";
cout<<"\n\n请选择功能选项:";
int choice3;
cin>>choice3;
return choice3;
}
/*自定义按照学号查找函数*/
void chazhao1(struct student stu[N],int i)
{
int select,j;
char ch;
cout<<"\t*******************您选择的是按照学号查找:*******************\n\n";
do
{
cout<<"\n\n请输入学号:";
cin>>select;
for(j=0;j<i;j++)
{
if(select==stu[j].ID)
{
break;
}
}
if(j<i)
{
showheader();
display(stu[j]);
}
else
{
cout<<"你查找的信息不存在\n";
}
cout<<"是否继续查找?(y/n)";
fflush(stdin);
ch=getchar();
system("cls");
}while(ch=='y');
}
/*自定义按照姓名查找函数*/
void chazhao2(struct student stu[N],int i)
{
int j;
char name[15];
char ch;
cout<<"\t*******************您选择的是按照姓名查找:*******************\n\n";
do
{
cout<<"\n\n请输入姓名:";
cin>>name;
for(j=0;j<i;j++)
{
if(strcmp(name,stu[j].name)==0)
{
break;
}
}
if(j<i)
{
showheader();
display(stu[j]);
}
else
{
cout<<"你查找的信息不存在\n";
}
cout<<"是否继续查找?(y/n)";
fflush(stdin);
ch=getchar();
system("cls");
}while(ch=='y');
}
//按照房间号查找
void chazhao3(struct student stu[N],int i)
{
int j,room;
char ch;
cout<<"\t*******************您选择的是按照房间号查找:*******************\n\n";
do
{
cout<<"\n\n请输入房间号:";
cin>>room;
for(j=0;j<i;j++)
{
if(room==stu[j].roomnum)
{
break;
}
}
if(j<i)
{
showheader();
display(stu[j]);
}
else
{
cout<<"你查找的信息不存在\n";
}
cout<<"是否继续查找?(y/n)";
fflush(stdin);
ch=getchar();
system("cls");
}while(ch=='y');
}
/*自定义查找功能子菜单函数*/
int menu5()
{
cout<<"\t*******************这里显示的是查找功能子菜单*******************\n\n";
cout<<"\t\t\t\t1、按照学号查找\n\n";
cout<<"\t\t\t\t2、按照姓名查找\n\n";
cout<<"\t\t\t\t3、按照房间号查找\n\n";
cout<<"\t\t\t\t4、退出子菜单,返回上一级菜单\n\n";
cout<<"\n\n请选择功能选项:";
int choice4;
cin>>choice4;
return choice4;
}
/*自定义用户权限函数*/
char chrPass[20];
int quanxian()
{
char user[15];
cout<<"\t\t*****************************************\n\n\t\t 欢迎您访问学生宿舍管理查询系统 \n\n\t\t*****************************************\n\n";
cout<<"\n提示 用户名:hehe 密码:1982";
cout<<"\n用户名:";
cin>>user;
cout<<endl;
cout<<endl;
cout<<"密 码:";
SavePass();
if((strcmp(chrPass,"1982")==0)&&(strcmp(user,"hehe")==0))
return 1;
else
return 0;
}
/*密码显示为"*"的函数*/
void SavePass()
{
char chr;
int count;
count = 0;
while((chr=getch())!=13)
{
chrPass[count] = chr;
cout<<"*";
count++;
}
chrPass[count+1] = '\0';
}
/*自定义表头函数*/
void showheader()
{ cout<<"\n\n\t******************************************************************\n";
cout<<"\t学号\t姓名\t性别\t房间号\t语文成绩 数学成绩 英语成绩 平均分\n";
cout<<"\t*******************************************************************\n";
}
要一份简明员工宿舍管理制度
员工宿舍管理办法 一、目的:为加强员工宿舍管理,给大家营造一个整洁、舒适、安全、有序的住宿环境。二、寝室长职责:1、男女宿舍各设立室长一名,全面负责本宿舍的卫生、纪律、安全等方面的工作。2、每月制定本宿舍的卫生值日表。3、寝室长有义务向行政人事部及时汇报寝室内发生的异常情况,否则视情节...
什么是“5+1”s学生宿舍管理
5+1s学生宿舍管理解释如下 5+1s学生宿舍管理是指在中国教育系统中一种利用“五好(好卫生、好秩序、好安全、好服务、好管理)+一亮(亮出来)”的方式来管理学生宿舍的方法。以下是对5+1s学生宿舍管理的详细描述。1.五好标准 五好标准指的是对学生宿舍进行管理的五个方面要求:卫生、秩序、安全、服务...
如何人性化的管理宿舍
我们的奖品,也是十分人性化的,如评上一次“文明寝室”,我们奖流动红旗及一袋洗衣粉或拖把之类的清洁卫生用品用具,连续两次评上“文明寝室”的,我们奖励一个月的“楚天都市报”,让同学们天天接受文明教育,天天想到文明建设。我们在以人为本,抓好学生宿舍的管理工作中,作了一些探素,也取得了一些...
作为宿舍长的我要怎样管理好宿舍啊
正好,本人高中时期也是一名宿舍长.一,对自己而言.为人要好,要真心为宿舍着想,不能有好处自己先拿,要起到带头作用,团结大家,培养舍友的集体荣誉感.不要为人自傲,要和蔼,跟室友做好兄弟.二,管理方面,安排任务,我那会是在宿舍制定一个值日表,星期一到星期天,每个人轮流值日,有得到好评的那周,会请室友吃饭什么....
怎么样管理宿舍卫生?
制定宿舍卫生管理制度,安排人员进行定期检查 卫生制度一般如下:宿舍卫生管理 自觉养成良好的社会公德和卫生习惯,保持宿舍内外环境卫生清洁。1、注意室内通风,保证空气流畅 2、自觉将室内物品摆放整齐。3、宿舍房间内的清洁卫生工作由住房员工负责,单身宿舍实行轮值制度。4、宿舍卫生做到地面干净、墙壁清洁,...
实现简单的学生宿舍基本信息管理,宿舍的基本信息包括楼号、房间号、面 ...
main.cpp 代码:\/ 实现简单的学生宿舍基本信息管理,宿舍的基本信息包括楼号、房间号、面积、所容纳人数、已入住人数等 1. 设计简单的菜单,能够进行系统功能选择。2. 实现信息的录入功能。3. 在已有信息的基础上添加新的记录。4. 删除指定房间号的记录。5. 修改指定房间号的记录 6. 实现信息的...
我到公司去管理集体宿舍,但是很脏乱差要怎样开始管理20几栋楼一千多个...
提供你一份制度样本,供参考,祝你成功.宿舍管理制度 (一)总则 为保证本公司员工宿舍的安全、整洁、卫生,为员工创造一个良好的生活、休息场所,特制定本制度。希望全体职员工自觉遵守、执行以共同创造优美的环境。本制度适用于所有在宿舍住的员工。(二)管理人员岗位职责 1、严格按照住宿制度管理,做好...
你会采取哪些措施来营造安全、干净的宿舍环境?
3、重视宿舍文化建设,培养学生良好行为习惯。宿舍文化建设目标按照"家"的理念,加强宿舍环境和文化建设,力争在宿舍形成优雅清新的环境,端庄大方的仪表,健康向上的情趣,丰富多彩的生活,团结友爱的风气,求知探索的氛围,拼博进取的精神,充分发挥宿舍的育人功能。宿舍管理是一个长期、艰巨的任务,是一个庞大的...
对小学生宿舍管理的建议15条
为让小学生能有一个更加安全、干净、舒适的生活环境,养成良好的生活习惯,作为小学的管理方,应该多举措,全力做好小学生宿舍管理工作。对于宿舍管理的建议,比如说有:对校园关键部位实施监控。学校在大门口和宿舍楼安装监控,时时监控学生动向,严控非学校人员出入校园。要严格门岗制度,不经领导同意,...
大学生如何处理好宿舍关系
其次,室友们应该遵守规则,包括宿舍和学校的规章制度。遵守规则可以维护宿舍的秩序和安全,也可以共同营造一个良好的学习和生活环境。处理冲突也是室友们需要学会的重要技巧。如果发生冲突或矛盾,要冷静理性地处理,不要情绪化,可以寻求学生辅导员或宿舍管理员的帮助,他们会提供适当的解决方法和建议。最后,...
友丁亿活: 用c行么?事实上vc++完全兼容c的,设有15个人#include#define A 15/*修改这里更改人数*/ void main() {char name[][20]; int num[],rom[],id[]; int i,j,t; for(i=0;i {printf("Please type on the student%d's name.",i); for(j=0;j {name[i][j]=getchar(); if(name[i][...
红河哈尼族彝族自治州17753716321: 哪位大侠给我编个学生宿舍管理的C程序 - ?
友丁亿活: 简单,用IF语句调用,判断是否4人.不是直接转出.进另外一个..然后判断是否有位置,IF调用.当这个房间的函数其中一个为0的时候写入..否则跳到下一个房间自动判断.删除着个简单.直接把那个房间的函数调用为0.交换就简单多了.房间的房间号码你都编好了.直接房间里面的人为1,2,3,4.当想交换某一个的时候直接调用到另外一个房间里..终于查询名字.最后1,2,3,4的对应名字直接对应,这个简单..当然其它的房间人数的替代不能一样哦..自己随便遍..呵呵.我这里没C程序.所以没办法帮你遍.告诉你思路一样的把.加油
红河哈尼族彝族自治州17753716321: 急求一个数据结构的课程设计,编写一个宿舍管理查询系统 用C语言?
友丁亿活: ...... 总体设计 详细设计 学生信息管理功能 宿舍信息管理和宿舍分配 卫生成绩的基本管理 出/入信息的基本管理 宿舍信息浏览模块 登陆,密码修改和退出 数据库设计 ............... 有的 一个宿舍管理查询系统 用C语言
红河哈尼族彝族自治州17753716321: 为宿舍管理员编写一个宿舍管理查询软件.语法要求要为C语言. - ?
友丁亿活: 基本上就是这样了...只有输出输入用了c++的cout/cin你可以自己换成printf和scanf,很简单的.. 程序在vc下运行了.#include<iostream.h> #include<string.h> #include<stdio.h> #include<stdlib.h> struct student{char ID[10];//学号int BN;...
红河哈尼族彝族自治州17753716321: 急求宿舍管理软件 C语言程序!!!!! - ?
友丁亿活: #include <stdio.h> #define NULL 0 #define TYPE struct student #define LEN sizeof(struct student) typedef struct student{float num;int room_num;char name;struct student *next; };struct room{int room_number;int count; }room[4]={{101,0},{102...
红河哈尼族彝族自治州17753716321: 怎么做一个C语言的宿舍管理系统??
友丁亿活: scanf、gets、printf、puts、fread、fwrite
红河哈尼族彝族自治州17753716321: 急需一个宿舍管理系统的设计报告 - ?
友丁亿活: 运行环境visual c++#include "cstdlib"#include #include #include #define LEN sizeof(struct AddressBook) int nosum=0; struct AddressBook { char name[10]; char address[30]; char telephone[12]; char classed[10]; char number[10]; char sex[10]; ...
红河哈尼族彝族自治州17753716321: 用C语言编写宿舍管理查询系统?
友丁亿活: 以前给别人写的,完全原创,已经在VC上编译运行通过: #include <conio.h> #include<stdio.h> #include<stdlib.h> #include<ctype.h> #include<string.h> typedef struct /*定义结构体数组*/ { char num[10]; /*学号*/ char name[20]; /*姓名*/ int ...
红河哈尼族彝族自治州17753716321: 基于c语言开发的学生宿舍管理系统 设计1个甚么作品?
友丁亿活: 首先准备是用数据库还是普通文本文件保存数据,如果文本,做个链表,信息字段有 学号 宿舍号 姓名 寝室长床号宿舍开关灯时间记过处罚等做几个菜单: 查询,删除,记录,添加等.
红河哈尼族彝族自治州17753716321: c语言程序设计题(课程设计)?
友丁亿活: #include<stdio.h> #include<stdlib.h> #include<ctype.h> #include<process.h> #define Null 0 struct tushu { int shuhao; char name[10]; int number; char writer[10]; char jieshao[50]; int price; struct tushu *next; }; struct tushu *init(int n) { int i; struct tushu *...