1 Java可以很简单的结合JS或其他方式实现BS模式访问的好看界面。而C如果要实现界面,或者要实现BS访问,则非常非常困难。至少对一个在校学生来说这几乎很难完成。
2学生管理系统自然少不了数据库。
JAVA的JDBC非常成熟,可以很简便的访问数据库。C访问数据库的库相对复杂,而且风格各异,需要一段时间学习和适应
3 JAVA语言相对简单,其内存回收,分配基本上都由系统完成。而C则需要自己完成。这意味着程序员需要花很多时间处理内存泄露问题。
感觉这个表不应该从宿舍本身入手,而应该从学生考虑起。
比如姓名,学号,楼号,寝室号,年龄……也就是学生信息表(student)吧
挨个建好,然后通过查询或者索引方式实现。
select 姓名,学号,寝室号 from student
where(如果要查1栋的学生,那就在这里写 楼号=1)
个人理解。。。
如果从宿舍本身入手的话就像是设计好空瓶子,然后往里面装水。
孩子 很清楚这是老师给你的作业题 ,,知识是被百度不出来的,,强烈建议看到此题的同仁不给出答案,,,,孩子 你自己试着写,,那不会,随时问 我们会解答 但你这是直接问作业 那老师还让你写干嘛???给你思路 那个合法才能进入,,只需要用个判断句就行,先输入密码 正确 则继续执行 错误 输出提示信息,,当然 这里你可以加一点花招 连续输入3次 直接退出程序或者等待1分钟才行,,哈哈 这个你可以写完不给老师说密码,然后老师输入,,哈哈 其他的的代码就是链表的知识了 课本上也都有的,,,,,好好学习啊 中国需要脚踏实地的程序员,,不要投机取巧,,
。。。。。。。。。。。。。。。。。。。。正在写
/学生宿舍信息管理系统/
#include<stdlibh>
#include<stdioh>
#include<conioh>
#include<dosh>
#include<stringh>
#define LEN sizeof(struct commdity)
struct student
{
char name[15];/学生姓名/
int sex;/学生性别/
};
struct commdity
{
int num;/宿舍号码/
int number;/容纳人数---并没有赋予实际作用/
int money;/住宿费用/
struct student Student[8];/最多能住个8人上限/
};
struct commdity comm[50];
void menu()/菜单/
{
printf("\t\t\t\t住宿管理系统:\n\n");
printf("\t\t\t\t0退出\n");
printf("\t\t\t\t1录入宿舍的信息\n");
printf("\t\t\t\t2录入学生的信息\n");
printf("\t\t\t\t3删除学生信息\n");
printf("\t\t\t\t4查找学生信息\n");
printf("\t\t\t\t请选择:(0-7):");
}
void in()/对宿舍信息的录入/
{
int i,m=0;
char ch[2];
FILE fp;
if((fp=fopen("data","ab+"))==NULL)
{
printf("不能打开文件\n");
return;
}
while(!feof(fp))
{
if(fread(&comm[m],LEN,1,fp)==1)
{
m++;
}
}
fclose(fp);
if(m==0)
{
printf("没有任何记录");
}
else
{
system("cls");
printf("存在记录");
}
if((fp=fopen("data","wb"))==NULL)
{
printf("不能打开文件");
return;
}
for(i=0;i<m;i++)
{
if(fwrite(&comm[i],LEN,1,fp)!=1)
{
printf("不能保存");
getch();
}
}
printf("是否输入(y\n)");
scanf("%s",ch);
while(strcmp(ch,"Y")==0 || strcmp(ch,"y")==0)
{
printf("宿舍编号");
scanf("%d",&comm[m]num);
for(i=0;i<m;i++)
{
if(comm[i]num==comm[m]num)
{
printf("该宿舍已经存在,按任意键继续");
getch();
fclose(fp);
return;
}
}
printf("请输入宿舍容纳人数");
scanf("%d",&comm[m]number);
printf("请输入住宿费用");
scanf("%d",&comm[m]money);
if(fwrite(&comm[m],LEN,1,fp)!=1)
{
printf("不能保存");
getch();
}
else
{
printf("已经保存 \n");
m++;
}
printf("是否继续");
scanf("%s",ch);
}
fclose(fp);
printf("OK!\n");
}
void studentInput()/分配学生到指定宿舍/
{
FILE fp;
int i,j,m=0,snum;
if((fp=fopen("data","ab+"))==NULL)
{
printf("不能打开文件!\n");
return;
}
while(!feof(fp))
{
if(fread(&comm[m],LEN,1,fp)==1)
{
m++;
}
}
printf("一共有%d条记录",m);
fclose(fp);
if((fp=fopen("data","wb"))==NULL)
{
printf("不能打开文件\n");
return;
}
printf("请输入学生的宿舍编号\n");
scanf("%d",&snum);
for(i=0;i<m;i++)
{
if(snum==comm[i]num)
{
printf("存在该宿舍!\n");
for(j=0;j<8;j++)
{
if(comm[i]Student[j]sex==NULL)
{
printf("请输入学生的名称\n");
scanf("%s",&comm[i]Student[j]name);
printf("请输入学生的性别(1-男,2-女)\n");
scanf("%d",&comm[i]Student[j]sex);
for(i=0;i<m;i++)
{
if(fwrite(&comm[i],LEN,1,fp)!=1)
{
printf("不能保存");
getch();
}
}
break;
}
}
fclose(fp);
return;
}
}
fclose(fp);
printf("没有找到");
return;
}
void search()/对学生信息查找/
{
int i,m=0;
FILE fp;
int s;
char ch[2];
int num=0;
printf("请输入编号\n");
scanf("%d",&num);
if((fp=fopen("data","ab+"))==NULL)
{
printf("文件不能打开!\n");
return;
}
while(!feof(fp))
{
if(fread(&comm[m],LEN,1,fp)==1)
{
m++;
}
}
if(m==0)
{
printf("没有任何记录存在");
return;
}
printf("一共有%d记录\n",m);
for(i=0;i<m;i++)
{
if(num==comm[i]num)
{
printf("存在该记录 是否显示\n");
scanf("%s",ch);
if(strcmp(ch,"Y")==0 || strcmp(ch,"y")==0)
{
printf("%d宿舍: 住宿人数%d\n",comm[i]num,comm[i]number);
for(s=0;s<8;s++)
{
if(comm[i]Student[s]sex!=NULL)
{
printf("\n学生:%s 性别:%d\n",comm[i]Student[s]name,comm[i]Student[s]sex);
}
}
}
return;
}
}
printf("没有找到");
}
void deleStudent()/删除住宿的学生信息/
{
FILE fp;
int snum,s,i,j,m=0;
char ch[2];
char name[20];
if((fp=fopen("data","ab+"))==NULL)
{
printf("不能打开文件!\n");
return;
}
while(!feof(fp))
{
if(fread(&comm[m],LEN,1,fp)==1)
{
m++;
}
}
fclose(fp);
if(m==0)
{
printf("没有记录\n");
return;
}
printf("请输入宿舍编号\n");
scanf("%d",&snum);
for(i=0;i<m;i++)
{
if(comm[i]num==snum)
{
printf("已经找到该宿舍!\n");
printf("请输入该学生的名称!\n");
scanf("%s",&name);
for(s=0;s<8;s++)
{
if(strcmp(comm[i]Student[s]name,name)==0)
{
printf("已将查询到该学生 (是否删除y\n)\n");
scanf("%s",ch);
if(strcmp(ch,"Y")==0 || strcmp(ch,"y")==0)
{
for(j=s;j<8;j++)
{
comm[i]Student[j]=comm[i]Student[j+1];
}
printf("删除成功!\n");
if((fp=fopen("data","wb"))==NULL)
{
printf("不能打开文件");
return;
}
for(i=0;i<m;i++)
{
if(fwrite(&comm[i],LEN,1,fp)!=1)
{
printf("不能保存");
getch();
}
}
}
fclose(fp);
return;
}
}
}
}
printf("没有找到\n");
return;
}
int main()
{
int n;
menu();
scanf("%d",&n);
while(n!=0)
{
switch(n)
{
case 1:
{
in();
break;
}
case 2:
{
studentInput();
break;
}
case 3:
{
deleStudent();
break;
}
case 4:
{
search();
break;
}
default:
{
break;
}
}
menu();
scanf("%d",&n);
}
system("pause");
}
/程序结束/
/保证语法上没有任何错误 有很多程序段重复,你可以自己改改,还有那个容纳人数我直接固定了8个 不过问题不大/
以上就是关于学生宿舍管理系统为什么选择java全部的内容,包括:学生宿舍管理系统为什么选择java、想做一个宿舍管理系统,里面应该有哪些内容呢、用C语言做 学生宿舍管理系统等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)