资源简介
这个是基于c/c++做的一个小型课设宿舍管理系统,大学学c语言的应该会用到,用文件存储的可读取数据,觉得有用就下载吧。
代码片段和文件信息
#include
#include
#include
#include
#include
#define MAX 1000
typedef struct student
{
char name[20];
char number[20];
char room[10];
}STU;
typedef struct
{
STU *data;
int length;
int size;
}Sqlist;
int init(Sqlist &L)
{
L.data=new STU[MAX];
L.length=0;
L.size=MAX;
return 1;
}
void dis(Sqlist &L)
{
FILE *fp;
int i;
init(L);
if((fp=fopen(“宿舍.txt““r“))==NULL)
{
printf(“文件打开失败!\n“);
printf(“即将退出!\n“);
Sleep(2000);
exit(1);
}
printf(“%20s\t%20s\t%20s\n\n““姓名““学号““房号“);
for(i=0;!feof(fp);i++)
{
fscanf(fp“%s%s%s“L.data[i].nameL.data[i].numberL.data[i].room);
printf(“%20s\t%20s\t%20s\n“L.data[i].nameL.data[i].numberL.data[i].room);
}
if(fclose(fp))
{
printf(“Can Not Close The File!\n“);
exit(1);
}
}
int partition(Sqlist &Lint lowint high)
{
L.data[0]=L.data[low];
while(low {
while((low=0))
{
--high;
}
L.data[low]=L.data[high];
while((low {
++low;
}
L.data[high]=L.data[low];
}
L.data[low]=L.data[0];
return low;
}
void qsort(Sqlist &Lint lowint high)
{
int e;
if(low {
e=partition(Llowhigh);
qsort(Llowe-1);
qsort(Le+1high);
}
}
void quicksort_name(Sqlist &L)
{
int i;
FILE *fp;
qsort(L1L.length);
if((fp=fopen(“宿舍.txt““w“))==NULL)
{
printf(“文件打开失败!\n“);
printf(“即将退出!\n“);
Sleep(2000);
exit(1);
}
for(i=1;i<=L.length;i++)
{
fprintf(fp“\n%20s\t%20s\t%20s“L.data[i].nameL.data[i].numberL.data[i].room);
}
fclose(fp);
}
void shell_number(Sqlist &L)
{
int idj;
FILE *fp;
for(d=L.length/2;d>0;d/=2)
{
for(i=d+1;i<=L.length;i++)
{
STU temp=L.data[i];
for(j=i-d;(j>=1)&& (strcmp(temp.numberL.data[j].number)<0 );j=j-d)
{
L.data[j+d]=L.data[j];
}
L.data[j+d]=temp;
}
}
if((fp=fopen(“宿舍.txt““r+“))==NULL)
{
printf(“文件打开失败!\n“);
printf(“即将退出!\n“);
Sleep(2000);
exit(1);
}
for(i=1;i<=L.length;i++)
{
fprintf(fp“\n%20s\t%20s\t%20s“L.data[i].nameL.data[i].numberL.data[i].room);
}
fclose(fp);
}
void heapAdjust(Sqlist &Lint sint m)
{
int j;
STU temp=L.data[s];
for(j=2*s;j<=m;j*=2)
{
if(j {
++j;
}
if(strcmp(temp.roomL.data[j].room)>=0)
{
break;
}
L.data[s]=L.data[j];
s=j;
}
L.data[s]=temp;
}
void heapsort_room(Sqlist &L)
{
STU temp;
int i;
FILE *fp;
init(L);
if((fp=fopen(“宿舍.txt““r“))==NULL)
{
printf(“无数据!\n“);
printf(“即将退出!\n“);
Sleep(2000);
exit(0);
}
for(L.length;(!feof(fp))&&L.length<=L.size;L.length++)
{
fscanf(fp“%10s%10s%s“L.data[L.length+1].nameL.data[L.length+1].numberL.data[L.length+1].room);
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 384 2015-07-11 20:27 宿舍.txt
文件 15597 2015-10-07 03:01 宿舍管理.cpp
文件 412011 2015-10-07 02:44 宿舍管理.exe
相关资源
- C/C++语言实现求矩阵的广义逆
- 基于C/C++的局域网聊天室源码
- 网关模板 C/C++程序编写
- socket实现的CS框架
- 贪心算法编写的01背包问题c/c++
- 微机接口课设 Proteus 8086 汽车控制系统
- 操作系统实验-----MFC线程--购票系统演
- 航班信息的查询与检索数据结构课设
- C语言模拟ATM(结构体版)
- 运动会分数统计
- 一元多项式的代数运算数据结构课设
- 南航C++课程设计含课设报告
- 学生社团管理系统数据结构课程设计
- K近邻算法c/c++
- 编写并调试一个模拟的进程调度程序
- C/C++:Windows编程—代码获取本地所有
- C++课设高校人员信息管理系统
- 最新传智播客C/C++第五期完整视频 R
- 理发师睡觉问题
- 基于RFID门禁系统源码 C/C++
- vs code C/C++语法高亮配置文件C/C++ The
- IDA Plugin Writing in C/C++
- C/C++实现linux和Windows查看系统、进程、
- Viterbi算法c/c++实现
- C/C++ STL参考手册 STL帮助文档 中文/英
- c/c++程序设计课后答案
- BDS/GPS导航定位C/C++从Txt文件读取和写
- C/C++经典约瑟夫环问题——带头结点的
- 运行c/c++程序时缺少mex.h
- 扫雷游戏源程序 c++课程设计必备
评论
共有 条评论