資源簡介
這個是基于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
評論
共有 條評論