| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 4339 人关注过本帖
标题:求教,怎样使用C语言编写宿舍管理系统
只看楼主 加入收藏
akkabc
Rank: 1
来 自:信宜
等 级:新手上路
帖 子:6
专家分:0
注 册:2010-3-1
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:7 
求教,怎样使用C语言编写宿舍管理系统
各位大侠,小的刚读大一,第二学期一开学老师就叫我们用C语言编写一个宿舍管理系统。本人能力有限,想请各路大虾出手相助,万谢!!
老师布置得作业具体要求如下:
学生宿舍管理系统
用C语言为学生宿舍管理人员编写一个宿舍管理软件。设某每个宿舍有4个床位:01,02,03,04,每个房间可住学生<=4人且同性别才可入住,按房间号有序存储,实现学生的入住、退房和查询,水电费用管理,按给定学号、姓名、房号查询、欠费查询等等。
请各位大虾给点提示或者方法~~~~小弟在此谢过了
搜索更多相关主题的帖子: 编写 系统 宿舍 C语言 
2010-03-01 20:14
小J
Rank: 8Rank: 8
等 级:等待验证会员
威 望:1
帖 子:282
专家分:704
注 册:2009-6-18
收藏
得分:5 
用链表啊,不会链表的话就用数组加结构体。
慢慢来,其实这种程序很好写的!
2010-03-01 21:02
陈大师
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:1
帖 子:231
专家分:1038
注 册:2009-11-4
收藏
得分:10 
还是用结构体数组吧···看起来似乎很复杂,其实只要用到一些简单的程序代码就行了···自己先列出框架来··一层层细分 ···自己先写写···有问题的大家来讨论讨论····
2010-03-02 20:38
longlong89
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:广州
等 级:小飞侠
威 望:6
帖 子:1043
专家分:2754
注 册:2009-8-18
收藏
得分:0 
自己细分一下,思路理清就easy了。

想象力征服世界
2010-03-02 21:31
哥写寂寞
Rank: 1
等 级:新手上路
帖 子:2
专家分:5
注 册:2010-3-1
收藏
得分:5 
#include"stdio.h"
#define 50
tyepdef struct
{char number[20];
char name[20];
char roomno[4];
char bedno[2];
int monery[10];
}address;
menu_select()
{char s[80]; int c; gotoxy(1,25);
printf("press any key enter menu.....\n"); getch();
clrscr(); gotoxy(1,1);
printf("****************************MENU******************************\n\n");
printf(" 1. Enter record\n");
printf(" 2. List the file\n");
printf(" 3. Delete a record\n");
printf(" 4. add record\n");
printf(" 5. Save the file\n");
printf(" 6. Load the file\n");
printf(" 7. sort the make new file\n");
printf(" 8. Quit\n");
printf("****************************MENU******************************\n");
do { printf("\n Enter you choice(1-8):");
scanf("%s",s); c=atoi(s);
} while(c<1||c>8);
return c;
}
enter(address t[])
{
int i,n;
char *s;
clrscr();
printf("\nplease input num \n");
scanf("%d",&n);
printf("\nplease input record \n");
printf("num     name     roomno      bedno      monery \n");
printf("-----------------------------------------------\n");
for(i=0;i<n;i++)
{scanf("%s%s%s%d",t[i].number,t[i].name,t[i].roomno,t[i].bedno,t[i].monery);
printf("-----------------------------------------------\n");
return n;
}
}

void list(ADDRESS t[],int n)
{
int i;
clrscr();
printf("\n\n**************************************\n");
printf("num   name     roomno     bedno      monery \n");
printf("----------------------------------------------\n");
for(i=0;i<n;i++)
{printf("%-20s%-30s%-10s%-2s%-20d\n",t[i].num,t[i].name,t[i].roomno,t[i].bedno,t[i].monery);
if((i+1)%10==0)
{
printf("press any key continue...\n");
getch();
}}
printf("***********************end*****************\n");
}

void print(ADDRESS temp)
{
clrscr();
printf("\n\n**************************************\n");
printf("num    name    roomno     bedno     monery\n");
printf("----------------------------------------------\n");
printf("%-20s%-30s%-10s%-2s%-20d\n",t[i].num,t[i].name,t[i].roomno,t[i].bedno,t[i].monery);
printf("***********************end**********************\n");
}
add(ADDRESS t[],int n)
{
ADDRESS temp;
int i,j;
char s[20];
printf("plese input record\n");
printf("*******************************************\n");
printf("num    name    roomno     bedno     monery\n");
printf("-------------------------------------------\n");
scanf("%s%s%s%s%d",temp.num,temp.name,temp.roomno,temp.bedno,temp.monery);
printf("----------------------------------------------\n");
printf("plese input locate num\n");
scanf("%s",s);
i=find(t,n,s);
for(j=n-1;j>=i;j--)
{
t[j+i]=t[j],t[j+i]=t[j],t[j+i]=t[j];
}
t[i]=temp,t[i]=temp,t[i]=temp;
n++;
return n;
}

find(ADDRESS t[],int n,char *s)
{
int i;
for(i=0;i<n;i++)
if(strcmp(s,t[i].name)==0)
return i;
return i;
}
delete(ADDRESS t[],int n)
{
char s[20];
int ch=0;
int i,j;
printf("please deleted num\n");
scanf("%s",s);
i=find(t,n,s);
if(i>n-1)
printf("no found not deleted\n");
else
{print(t[i]);
printf("Are you sure delete it(1/0)\n");
scanf("%d",&ch);
if(ch==1)
{
for(j=i+1;j<n;j++)
t[j-1]=t[j];

n--;
}
}
return n;
}
void save(ADDRESS t[],int n)
{
int i;
FILE *fp;
if((fp=fopen("record.txt","wb"))==NULL)
printf("can not open file\n");
else
{
printf("\nSaving file\n");

fprintf(fp,"%d\r\n",n);
for(i=0;i<n;i++)
fprintf(fp,"%s%s%s%s%d",temp.num,temp.name,temp.roomno,temp.bedno,temp.monery);
}
fclose(fp);
printf("****save success***\n");
}
load(ADDRESS t[])
{
int i,n;
FILE *fp;
if((fp=fopen("record.txt","rb"))==0)
printf("can not open file\n");
else
{fscanf(fp,"%d",&n);
for(i=0;i<n;i++)
fscanf(fp,"%s%s%s%s%d",temp.num,temp.name,temp.roomno,temp.bedno,temp.monery);
}
fclose(fp);
printf("You have success read data from file!!!\n");
return n;
}
void sort(ADDRESS t[],int n)
{
int i,j,flag;
ADDRESS temp;
for(i=0;i<n;i++)
{
flag=0;
for(j=0;j<n-1;j++)
if((strcmp(t[j].num,t[j+1].num))>0)
{
flag=1;
temp=t[j],t[j]=t[j+1],t[j+1]=temp;
}
if(flag==0)break;
}
printf("sort sucess!!!\n");
}

main()
{
address adr[m];
int length;
clrscr();
for(;i;)
switch(menu_select())
{ case 1:length=enter(adr);break;
case 2:list(adr,length);break;
case 3:length=delete(adr,length);break;
case 4:length=add(adr,length);break;
case 5:save(adr,length);break;
case 6:length=load(adr);break;
case 7:sort(adr,length);break;
case 8:i=0;
}

}
2010-03-02 23:23
akkabc
Rank: 1
来 自:信宜
等 级:新手上路
帖 子:6
专家分:0
注 册:2010-3-1
收藏
得分:0 
大虾,这程序用TC20运行不了,有三个错误~小弟不才,不会修改
2010-03-03 19:59
哥写寂寞
Rank: 1
等 级:新手上路
帖 子:2
专家分:5
注 册:2010-3-1
收藏
得分:0 
#define 50   少了个M #define M 50
把所有的大写address改为小写
出现笔误

 
2010-03-05 23:18
时光之旅
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2015-5-12
收藏
得分:0 
用C语言该如何改写呢
2015-05-13 12:44
快速回复:求教,怎样使用C语言编写宿舍管理系统
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017505 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved