景德镇陶瓷大学

实践周课程设计报告

实验名称

编写宿舍管理查询软件

姓    名

杨茹

班    级

17信管一班

学    号

117060300109

完成日期

2018年12月27日

  • 实验目的

为宿舍管理人员编写一个宿舍管理查询软件

  • 设计要求
  1. 采用交互工作方式 
  2. 建立数据文件,数据文件按关键字(姓名、学号、房号)进行排序(冒泡、选择、插入排序等任选一种) 
  3. 查询菜单(用二分查找实现以下操作)
  1. 按姓名查询  
  2. 按学号查询  
  3. 按宿舍号查询 
  1. 打印任一查询结果(可以连续操作)
  • 需求分析

    1. 性能分析

宿舍内入住若干学生,每个宿舍都有唯一独立编码,入住学生有唯一的姓名、学号。编写宿舍管理系统,添加学生的姓名、学号、宿舍号为关键字,创建相应函数实现各种排序、查找和插入删除等操作。使用这些关键字及函数方便进行宿舍管理。

    1. 功能分析
  1. 实现交互工作方式,各项操作结束后均应返回主菜单; 
  2. 建立数据文件:系统本无任何信息数据,需开发一个“信息输入”功能,即首先创建一个学员线性表,同时我们可以将数据暂时保存在内存中,学生信息包括:姓名,学号,宿舍号;
  3. 显示:信息录入后都保存在内存中,用户看不到,需要设计一个信息显示功能,信息的显示应该便于查阅,所以需具备按各种关键字显示的功能;
  4. 排序:本系统按关键字(姓名、学号、房号)进行冒泡排序;
  5. 查询:采用二分查找方式,分别实现按关键字(姓名、学号、房号)查询功能; 
  6. 删除:于有些同学因为不同原因而离校,所以设计了删除功能;
  7. 插入:由于有新同学入校,所以设计了插入功能;、
  8. 打印:将查询到的某一学生信息或全部学生信息打印;
  9. 退出:退出交互工作系统。

功能

输入

查询

排序

显示

插入

删除

退出

 
   

(图1  功能简图)

    1. 用户需求
  1. 创建欢迎界面;
  2. 创建线性表,提示用户输入信息,并现实显示信息,输出各种关键字信息,便于用户查阅;
  3. 创建主界面,建立主选择菜单和子选择菜单,便于用户操作;
  4. 创建返回主菜单的函数,人性化设计;
  5. 提供推出选项,操作完毕需要退出时,提供选项,便于使用者退出交互工作系统;
  6. 优化程序,提供友好界面,操作键如下:

0:退出程序       1:按姓名排序     2:按学号排序

3:按宿舍号排序   4:按姓名查找     5:按学号查找

6:按宿舍号查找   7:按学号插入     8:按学号删除

  • 框架设计

宿舍管理系统功能模块图及流程图

姓名

学号

宿舍号

按照姓名排序,冒泡排序

按照学号排序,冒泡排序

按照宿舍排序,冒泡排序

排序模块

按照姓名从小到大查找,二分法查找

按照学号从小到大查找,二分法查找

按照宿舍从小到大查找,二分法查找

查找模块

按照学号从小到大插入

按照学号从小到大删除

插入和删除

(图2 功能模块图)

y

1<=f<=8

f<0或f>8

f=0

显示学生信息

是否继续

按姓名排序

按学号排序

按宿舍号排序

按姓名查找

按学号查找

按宿舍号查找

按学号插入

按学号删除

输入

姓名

输入

学号

输入

宿舍号

输入

信息

输入

学号

退出

开始

(主界面)

输入学生信息

是否继续输入

输入整数t

判断t

y

(图 3 系统流程图)

  • 概要设计
  1. 存储结构

单链表存储,结构体定义为

typedef struct{           //定义结构体成员

char name[20];

int num;                 //学号宿舍号为整型

int room;

}stu;

stu stud;

typedef struct{

int Length;              //当前长度

stu *Elem;               //存储空间基址

int ListSize;            //当前分配的存储容量

}LinkList;

  1. 数据设计

int f                  全局变量,指选择的操作键数

char name[20]          姓名

int num                学号

int room               宿舍号

int Length            为线性表的当前长度

stu *Elem;          指示线性表的基地址

int Listsize          当前分配的存储容量 

char c                 进入主界面的任意键

ch                    判断字符y或n 

int i,j               冒泡排序中,i为外层循环次数,j为内层循环次数

int i                打印学生信息时,i作为循环变量

int m;,int n;,int a   m,n,a在二分查找中分别代表房号,学号,姓名

int i,j,k;           i,j,k在按学号插入中作为循环变量 

int i,j,k=-1          i,j,k在按学号删除中作为循环变量

  1. 函数设计

int menu();                //列出主菜单

void Init(LinkList &L)     //初始化线性表

void Create(LinkList &L)   //创建学生信息表

void Shuru(LinkList L)     //学生信息录入

void Disp()                //返回主界面,调用menu()函数实现

void Sorte(LinkList &L)    //按照姓名由小到大排序,冒泡排序

void Sortn(LinkList &L)    //按照学号由小到大排序,冒泡排序

void Sortr(LinkList &L)    //按照宿舍号由小到大排序,冒泡排序

void chazhaoe(LinkList &L) //按姓名从小到大查找,二分查找

void chazhaon(LinkList &L) //按学号从小到大查找,二分查找

void chazhaor(LinkList &L) //按宿舍号从小到大查找,二分查找

void Insert(LinkList &L)  //按学号从小到大插入该学生

void Delete(LinkList &L)  //按学号从小到大删除该学生

int panduan2(char ch)   //如果学生不存在,判断是否继续查找,通过if语句,文件操作函数实现

void panduan3()        //如果已无学生记录则返回主界面,通过调用其他函数和文件操作函数实现

void print1 LinkList L)  //打印学生信息,通过调用文件操作函数实现

void print2(LinkList L,int mid)//输出学生信息,通过调用文件查找函数实现

void main()                //主函数,系统操作入口

  • 详细设计

实验源代码如下:

// 17信管宿舍管理系统.cpp : 定义控制台应用程序的入口点。

#include "stdafx.h"

#include<stdio.h>

#include<stdlib.h>

#include<string.h>

#define N 40

#define increase 10

int f,t=0;

typedef struct{

char name[20];

int  num;

int  room;

}stu;

stu stud;

typedef struct{

int Length;

stu *Elem;

int ListSize;

}LinkList;

void Init(LinkList &L){                                //初始化

L.Length=0;

L.Elem=(stu *)malloc(N * sizeof(stu ));

L.ListSize=N;

}

void menu(){                                      //菜单界面

printf("\n");

printf("----------------------------17信管1班宿舍管理查询系统---------------------------\n");

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

printf("                             1、 按姓名排序\n");        printf("\n");

printf("                             2、 按学号排序\n");        printf("\n");

printf("                             3、 按宿舍号排序\n");   printf("\n");

printf("                             4、 按姓名查找\n");        printf("\n");

printf("                             5、 按学号查找\n");        printf("\n");

printf("                             6、 按宿舍号查找\n");   printf("\n");

printf("                             7、 按学号插入\n");        printf("\n");

printf("                             8、 按学号删除\n");

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

printf("提示:当输入的数字键为0时,退出操作\n");

if(t==1)

{

printf("请输入数字键(1——8为操作键):");

scanf_s("%d",&f);

if(f<0||f>9)

{

system("cls");

printf("\n");

printf("输入的数字不对,请在原处重新输入\n");printf("\n");

menu();

}

}

}

void Disp(){                                      //返回主界面

char c;

fflush(stdin);printf("\n");

printf("请按任意键进入主界面:");

scanf_s("%c",&c);

system("cls");

}

void Shuru(LinkList L)                              //输入学生信息

{

printf("请输入姓名:");

fflush(stdin);                                //清空输入缓冲区,得到正确的输入数据

gets_s(stud.name);

printf("请输入学号:");

scanf_s("%d",&stud.num);

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

scanf_s("%d",&stud.room);

}

void Create(LinkList &L)                            //创建学生信息表

{

if(L.Length>=L.ListSize)                        //超过学生人数的初值重新输入

{

stu *newbase;

newbase=(stu *)realloc(L.Elem,(N+increase) * sizeof(stu ));

L.Elem=newbase;

L.ListSize+=increase;

}

int i=2;

char ch;printf("\n");

printf("--------------------------开始创建线性表--------------------------\n");

printf("\n");

printf("请输入第1个学生信息\n");

Shuru(L);

ch=getchar();

strcpy_s(L.Elem[L.Length].name,stud.name);

L.Elem[L.Length].num=stud.num;

L.Elem[L.Length].room=stud.room;

L.Length++;

printf("\n");

printf("是否继续输入?<y/n>:");

scanf_s("%c",&ch);

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

while(ch=='y')

{

printf("请输入第%d个学生的信息\n",i);

Shuru(L);

strcpy_s(L.Elem[L.Length].name,stud.name);

L.Elem[L.Length].num=stud.num;

L.Elem[L.Length].room=stud.room;

L.Length++;

i++;

ch=getchar();

printf("\n");

printf("是否继续输入?<y/n>:");

scanf_s("%c",&ch);

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

}

if(ch=='n')

system("cls");

}

void Sortr(LinkList &L)                             //按照宿舍号号排序由小到大排序,冒泡排序

{

int i,j;

stu temp;

for(i=0;i<L.Length-1;i++)

for(j=i+1;j<L.Length;j++)

if(L.Elem[i].room>L.Elem[j].room)

{

temp=L.Elem[i];

L.Elem[i]=L.Elem[j];

L.Elem[j]=temp;

}

}

void Sortn(LinkList &L)                           //按照学号排序由小到大排序,冒泡排序

{

int i,j;

stu temp;

for(i=0;i<L.Length-1;i++)

for(j=i+1;j<L.Length;j++)

if(L.Elem[i].num>L.Elem[j].num)

{

temp=L.Elem[i];

L.Elem[i]=L.Elem[j];

L.Elem[j]=temp;

}

}

void Sorte(LinkList &L)                           //按照姓名排序由小到大排序,冒泡排序

{

int i,j;

stu temp;

for(i=0;i<L.Length-1;i++)

for(j=i+1;j<L.Length;j++)

if(strcmp(L.Elem[i].name,L.Elem[j].name)>0)

{

temp=L.Elem[i];

L.Elem[i]=L.Elem[j];

L.Elem[j]=temp;

}

}

void print1(LinkList &L)                          //打印学生信息

{

int i;

printf("\n");

printf("姓名           学号           宿舍号  \n");printf("\n");

for(i=0;i<L.Length;i++)

printf("%-15s%-3d%15d\n",L.Elem[i].name,L.Elem[i].num,L.Elem[i].room);

}

void print2(LinkList &L,int mid)                   //打印查找到的学生信息

{

printf("查找成功------->该学生信息为:\n");

printf("姓名           学号          宿舍号\n");printf("\n");

printf("%-15s%-3d%15d\n",L.Elem[mid].name,L.Elem[mid].num,L.Elem[mid].room);

}

int Panduan1(char ch)                          //有学生

{

scanf_s("%c",&ch);

printf("是否继续查找?<y/n>:");

fflush(stdin);

scanf_s("%c",&ch);

if(ch=='y')

{

system("cls");

return(1);

}

else

return 0;

}

int Panduan2(char ch)                          //该学生不存在,是否继续查找

{

scanf_s("%c",&ch);

printf("该学生不存在,是否继续查找?<y/n>:");

fflush(stdin);

scanf_s("%c",&ch);

if(ch=='y')

{

system("cls");

return(1);

}

else

return 0;

}

void Panduan3()                               //判断没有学生信息后的操作,返回主界面

{

printf("\n");

printf("已无学生记录\n");

printf("\n");

Disp();

menu();

}

void chazhaor(LinkList &L)                       //按宿舍号从小到大查找,二分查找

{

if(L.Length==0)

Panduan3();

else

{

int low=0,high=L.Length,mid,flag=0;

int m;

char ch='y';

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

printf("按宿舍号查找---------->请输入要查找的宿舍号:");

scanf_s("%d",&m);

printf("\n");

while(low<=high)

{

mid=(low+high)/2;

if(m==L.Elem[mid].room)

{

flag=1;

break;

}

else if(m>L.Elem[mid].room)

low=mid+1;

else

high=mid-1;

}

if(flag==1)

{

print2(L,mid);

if(Panduan1(ch))

chazhaor(L);

else

{

system("cls");

menu();

}

}

else

{

if(Panduan2(ch))

chazhaor(L);

else

{

system("cls");

menu();

}

}

}

}

void chazhaon(LinkList &L)                    //按学号从小到大查找,二分查找

{

if(L.Length==0)

Panduan3();

else

{

int low=0,high=L.Length,mid,flag=0;

int n;

char ch='y';

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

printf("按学号查找---------->请输入要查找的学号:");

scanf_s("%d",&n);

printf("\n");

while(low<=high)

{

mid=(low+high)/2;

if(n==L.Elem[mid].num)

{

flag=1;

break;

}

else if(n>L.Elem[mid].num)

low=mid+1;

else

high=mid-1;

}

if(flag==1)

{

print2(L,mid);

if(Panduan1(ch))

chazhaon(L);

else

{

system("cls");

menu();

}

}

else

{

if(Panduan2(ch))

chazhaon(L);

else

{

system("cls");

menu();

}

}

}

}

void chazhaoe(LinkList &L)                  //按姓名查找,二分查找

{

if(L.Length==0)

Panduan3();

else

{

int low=0,high=L.Length,mid,flag=0;

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

printf("按姓名查找---------->请输入要查找的姓名:");

char a[15],ch='y';

scanf_s("%s",&a);

printf("\n");

while(low<=high)

{

mid=(low+high)/2;

if(strcmp(a,L.Elem[mid].name)==0)

{

flag=1;

break;

}

else if(strcmp(a,L.Elem[mid].name)>0)

low=mid+1;

else

high=mid-1;

}

if(flag==1)

{

print2(L,mid);

if(Panduan1(ch))

chazhaoe(L);

else

{

system("cls");

menu();

}

}

else

{

if(Panduan2(ch))

chazhaoe(L);

else

{

system("cls");

menu();

}

}

}

}

void Insert(LinkList &L)                       //按学号从小到大插入该学生

{

int i,j ,k;

char ch;

printf("\n");

printf("插入的学生信息为:\n");

printf("姓名:");

fflush(stdin);

gets_s(stud.name);

printf("学号:");

scanf_s("%d",&stud.num);

printf("宿舍号:");

scanf_s("%d",&stud.room);

if(L.Length==0)

{

strcpy_s(L.Elem[L.Length].name,stud.name);

L.Elem[L.Length].num=stud.num;

L.Elem[L.Length].room=stud.room;

}

for(i=0;i<L.Length;i++)

{

if(stud.num<L.Elem[i].num)

{

k=i;

for(j=L.Length;j>k;j--)

L.Elem[j]=L.Elem[j-1];

strcpy_s(L.Elem[k].name,stud.name);

L.Elem[k].num=stud.num;

L.Elem[k].room=stud.room;

break;

}

else

{

strcpy_s(L.Elem[L.Length].name,stud.name);

L.Elem[L.Length].num=stud.num;

L.Elem[L.Length].room=stud.room;

}

}

L.Length++;

fflush(stdin);

printf("\n");

printf("是否继续插入><y/n>:");

scanf_s("%c",&ch);

if(ch=='y')

Insert(L);

else

system("cls");

}

void Delete(LinkList &L)                       //删除学生信息

{

int i,j,k=-1;

char ch;

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

printf("请输入要删除学生的学号:");

scanf_s("%d",&stud.num);

for(i=0;i<L.Length;i++)

{

if(stud.num==L.Elem[i].num)

{

printf("该学生的信息为:\n");

printf("\n");

printf("%-15s%-3d%15d\n",L.Elem[i].name,L.Elem[i].num,L.Elem[i].room);

k=i;

for(j=k;j<L.Length-1;j++)

L.Elem[j]=L.Elem[j+1];

printf("\n");

break;

}

}

if(i>=L.Length)

printf("该学生不存在\n");

if(k>=0)

L.Length--;

fflush(stdin);

printf("\n");

printf("是否继续删除?<y/n>:");

scanf_s("%c",&ch);

system("cls");

if(ch=='y')

Delete(L);

else

system("cls");

}

void main(){

LinkList L;

Init(L);

char ch;

system("color d");

printf("\n");

printf("-----------------------欢迎进入17信管一班宿舍管理查询系统-----------------------\n");

printf("\n");

printf("请按任意键开始操作:");

scanf_s("%c",&ch);

system("cls");                           //将屏幕先前显示的内容删除掉

Create(L);

system("cls");

t=1;

menu();

while(f!=0)

{

system("cls");

switch(f)

{

case 1:Sorte(L);                     //按照姓名排序

printf("\n");

if(L.Length==0)

{

printf("已无学生记录\n");

printf("\n");

Disp();

menu();

}

else

{

printf("按姓名排序:\n");

print1(L);

Disp();                   //调用返回主界面

menu();

}

break;

case 2:Sortn(L);                //按学号排序

printf("\n");

if(L.Length==0)

{

printf("已无学生记录\n");

printf("\n");

Disp();

menu();

}

else

{

printf("按学号排序:\n");

print1(L);

Disp();

menu();

}

break;

case 3:Sortr(L);                  //按房间号排序

printf("\n");

if(L.Length==0)

{

printf("已无学生记录\n");

printf("\n");

Disp();

menu();

}

else

{

printf("按宿舍号排序:\n");

print1(L);

Disp();

menu();

}

break;

case 4:Sorte(L);               //先调用按姓名排序函数进行排序

chazhaoe(L);            //再调用按姓名查找函数进行(二分)查找

break;

case 5:Sortn(L);              //姓名

chazhaon(L);

break;

case 6:Sortr(L);              //宿舍号

chazhaor(L);

break;

case 7:Sorte(L);              //调用插入函数

Insert(L);

system("cls");

printf("显示插入后的学生信息:\n");

print1(L);

Disp();

menu();

break;

case 8:Delete(L);            //调用删除函数

if(L.Length==0)

{

printf("\n");

printf("学生记录已经被删除完\n");

printf("\n");

Disp();

menu();

}

else

{

printf("显示删除后的学生信息:\n");

print1(L);

Disp();

menu();

}

break;

}

}

}

  • 调试分析
  1. 测试数据

姓名      学号      宿舍号

杨茹      109        602   (删除)

訾欣      108        603

彭珠      131        602

孙友田    104        604  (插入)

李倩      105        602  (插入)(删除)

  1. 测试结果

    1. 欢迎界面
  1. 学生信息输入
  1. 主菜单
  1. 按姓名排序
  1. 按学号排序
  1. 按宿舍号排序
  1. 按姓名查找
  1. 按学号查找
  1. 按宿舍号查找
  1. 插入学生信息

(插入:信息输入界面)

(插入:信息输出界面)

  1. 删除学生信息

(删除一人)

(继续删除一人)

(删除:最终输出界面)

  1. 退出
  1. 判断学生不存在

1

  • 心得体会

通过本次数据结构课程设计实践周,我学习到了很多。本次课程设计内容是编写一个宿舍管理系统,完成这个项目我用时四天:

第一天

分析系统功能模块,设计程序框图,查找相关资料,编写代码框架

第二天

编写代码,填充内容,完成实验设计

第三天

调试代码,分析结果,编写实验报告

第四天

完成实验报告,进行总结。

在实验过程中,我充分利用了时间,在完成实验设计的同事,复习课本内容,巩固了知识点,许多曾经不知道的知识,通过互联网资源结合自身实践,现在也能了解掌握,比如:

1、在VS中,system("cls");的功能是将屏幕先前显示的内容删除掉

2、fflush(stdin); 功能是清空输入缓冲区,得到正确的输入数据

3、system("color d");功能是改变整个控制台的颜see,用 system("color

0A"); 其中color后面的0是背景色代号,A是前景色代号,每个数字可以为以下任何值之一。各颜色代码如下:

0 = 黑色      1 = 蓝色      8 = 灰色       9 = 淡蓝色

2 = 绿色      3 = 湖蓝色    A = 淡绿色     B = 淡浅绿色

4 = 红色      5 = 紫色      C = 淡红色     D = 淡紫色

6 = 黄色      7 = 白色      E = 淡黄色     F = 亮白色

4、scanf()和gets()输入函数的不同之处,scanf()输入字符串时不能带空格,否则不能输出空格后的字符,而gets()可以。

5、strmp()函数,比较两个字符串

设这两个字符串为str1,str2,

若str1=str2,则返回零;

若str1<str2,则返回负数;

若str1>str2,则返回正数。

6、在使用vs的时候,使用scanf和strcpy以及gets函数都会报错,说这几个函数存在安全问题。带“_s”后缀的函数是为了让原版函数更安全,传入一个和参数有关的大小值,避免引用到不存在的元素,防止hacker利用原版的不安全性(漏洞)黑掉系统。比如 scanf是不安全的 建议使用scanf_s替换,scanf_s多了一个参数,缓冲区大小,这可以防止缓冲区溢出。

在程序设计中,我使用Panduan1(),Panduan2(),Print1(),print2(),Disp()等函数来实现程序优化,对线性表、二分查找、冒泡排序有了进一步了解。但在实验过程中我也遇到了许多问题,有的是如if(**==**)漏写等号,数据未初始化等细节方面的问题,在调试分析中都可以检查出来,但是仍然有一些知识性问题来求助于网络和同学。其中在“按照名字查询void chazhaoe(LinkList &L) ”这一函数中遇到一些问题,程序不稳定,此功能经常会失灵,不能发挥相应的功能效果,目前我仍在寻找解决办法。

编程是一门实践学问,在以后我一定会多加练习,增加实践,提高自己的编程能力。

数据结构--宿舍管理查询软件相关推荐

  1. 数据结构课设——宿舍管理查询软件(文件读取与查找排序)

    问题描述 任务:为宿舍管理人员编写一个宿舍管理查询软件, 程序设计要求: (1)采用交互工作方式 (2)可以增加.删除.修改信息 (3)建立数据文件,数据文件按关键字(姓名.学号.房号)进行排序(选择 ...

  2. C语言宿舍管理查询软件

    C语言宿舍管理查询软件 发任务书日期:2022 年6月22日 课 程 设 计 任 务 书 1.设计目的: <数据结构>课程主要介绍最常用的数据结构,阐明各种数据结构内在的逻辑关系,讨论其在 ...

  3. java二分查找宿舍管理_1、任务:为宿舍管理人员编写一个宿舍管理查询软件, 程序设计要求: (1)采用交互工作方式...

    1.任务:为宿舍管理人员编写一个宿舍管理查询软件, 程序设计要求: (1)采用交互工作方式 2016-08-22 0 0 0 暂无评分 其他 1 积分下载 如何获取积分? 1.任务:为宿舍管理人员编写 ...

  4. 宿舍管理查询软件 C语言 中文摘要,宿舍管理查询软件 课程设计报告.doc

    宿舍管理查询软件 课程设计报告 课 程 设 计 课程设计名称: 宿舍管理查询软件 专 业 班 级 : 计科0604 学 生 姓 名 : 胡方俊 学 号 :20064140414 指 导 教 师 : 白 ...

  5. 数据结构综合训练报告--学生宿舍管理查询软件开发(论文+详细代码)

    摘要:当今社会正在飞速进步,计算机化管理正是在当今时代下发展起来的.21世纪的今天,信息社会占据着主流地位,计算机在各行各业中的也已经得到了普及,自动化.信息化.数据化的管理越来越广泛应用于各个领域. ...

  6. c语言宿舍管理查询软件,宿舍管理查询软件--数据结构,c语言

    四.功能模块说明 输入学生宿舍信息模块:完成宿舍信息的录入,可以选择从平台手动输入,也可以选择从指定文件中读取. 保存学生宿舍信息模块,完成宿舍信息的保存. 排序学生宿舍信息模块,完成按关键字排序的功 ...

  7. 宿舍管理查询软件系统

    宿舍管理查询软件系统 题目描述 为宿舍管理人员编写一个宿舍管理查询软件. 基本要求 (1)采用交互工作方式 (2)可以增加.删除.修改信息 (3)建立数据文件 ,数据文件按关键字(姓名.学号.房号)进 ...

  8. 查询宿舍信息的c语言,学生宿舍管理软件C语言源代码(完整版)

    学生宿舍管理系统C语言代码 一.需求分析 该程序是由C语言编写的一个宿舍管理查询软件,其主要功能是实现对学生信息的增加.删除.修改.查询.排序.存储.加载.其中查询可以分别以姓名.学号.寝室号为关键字 ...

  9. c语言课设宿舍管理程序,C语言程序课程设计宿舍管理软件.doc

    C语言程序课程设计宿舍管理软件.doc 课程设计(论文) 题 目 名 称 宿舍管理软件 课 程 名 称 C语言程序课程设计 学 生 姓 名 学 号 系 .专 业 信息工程系.信息大类 指 导 教 师 ...

最新文章

  1. 读《大道至简》第六章感想
  2. DVWA安装——一个菜鸟的入门教程
  3. fragment+viepager 的简单暴力的切换方式
  4. drawContours函数
  5. 自定义布局RelativeLayout 画网格线
  6. Python基础概念_9_输入输出
  7. ROS下获取kinectv2相机的仿照TUM数据集格式的彩色图和深度图
  8. firefox如何载入json文件_Firefox在书签工具栏中推隐藏“其他书签”文件夹功能
  9. Configure VNC in RHEL 7
  10. 前端05.js入门之BOM对象与DOM对象。
  11. 单刹车信号不合理故障_航班盘旋数十圈返航 天津航空:刹车温度传感器等故障...
  12. mac Sourcetree 账号密码输入错误后, 重新输入的方法
  13. 内网渗透文章CFS三层靶机内网渗透--直接杀到内网
  14. android系统签名及修改
  15. 你本是一个肉体,是什么驱使你前行【3】
  16. 冬幕节成就任务攻略指引
  17. 陈敏 Java课设实验报告
  18. A05-没有奥维vip,导入元素个数受限制,想导入三区三线图斑怎么办?
  19. 获取android模拟器的IP地址
  20. 计算机硬盘 打开很慢,电脑硬盘运行速度慢如何解决 电脑硬盘运行速度慢解决方法【介绍】...

热门文章

  1. 创业故事—我与知识付费的那些事儿
  2. 市制,公制,英制标准解释说明
  3. 浅谈---如何成长为一名合格的架构师?
  4. samba 找不到网络路径 的解决办法.
  5. 查找数据库中一条指定字段为NULL的数据
  6. java计算机毕业设计高考志愿智能辅助填报系统源码+数据库+系统+lw文档+部署
  7. Qt 实现软件自动更新
  8. Apply for and apply to
  9. 女生乘火车时离奇死亡 铁路局称按规定只赔6万
  10. oracle翻译甲骨文,甲骨文