1课程设计题目十

发布 2022-10-04 07:32:28 阅读 8480

学生宿舍管理系统。

一设计内容及要求:

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

要求:1)建立数据文件,数据文件按关键字(姓名,学号,房号)进行排序(冒泡,选择,插入排序等任意一种)

2)查询菜单(用二分法实现以下操作)

a.按姓名查询。

b.按学号查询。

c.按房号查询。

二概要设计。

1)需要定义一个结构体:

typedef struct pnode /*结构体定义用于存放学生信息的节点*/

用来存储学生的信息。

2)create()

/*初始条件:必须保证原有记录是空时方可建立*/

操作结果:建立一个新的数据文件。

3) readfile()

/*初始条件:数据文件已经建立*/

操作结果:获取次文件的信息

4)serch1()按姓名查找。

serch2()按学号查找。

serch3()按宿舍号查找。

初始条件:数据文件中含有纪录。

操作结果:不支持模糊查询必须查询项和关键字吻合情况下才可查询。调用按不同关键字查询的子函数。

若存在相应的查询结果则显示在屏幕上,若查找的纪录不存在则提示该纪录不存在,请建立相应的数据纪。

5)insert()

/*添加数据纪录的函数*/

初始条件:必须已经建立了数据文件。

操作结果:在数据文件中添加新的纪录。

若没有建立数据文件则添加失败。

6) delete()

/*删除数据纪录的函数*/

初始条件:必须建立了数据库并且数据文件中含有数据纪录。

操作结果:删除输入学号的学生的一切相关纪录。

7)updata()

/*修改数据纪录的函数*/

初始条件:必须建立了数据库并且数据文件中含有数据纪录。

操作结果:修改输入的学号相对应的学生的一切信息。

如不存在相应的纪录则提示不存在。

8)output()

/*输出函数*/

初始条件:数据文件已经建立。

操作结果:起泡法排序按学号顺序输出记录。

2> 本程序包含10个函数:

1. 主函数main()

2. 新建数据文件create()

3. 查询函数serch1()

4. 查询函数serch2()

5. 查询函数serch3()

6. 加数据纪录函数insert()

7. 删除数据纪录函数delete()

8. 修改数据纪录函数updata()

9. 数据文件读取函数readfile ()

10. 查询当前所有纪录冰按学号升序输出的函数output()

三设计思想:

采用模块化编程思想,将程序划分为11个模块,在逐个模块细化编程,最后再将个个模块组装成软件。

四测试。测试结果及数据如下:

五程序源**如下:

#include<>

#include<>

#include<>

typedef struct pnode

char name [8

char xh[16

char fh[30

}personnode;

char filename[20];

file *fp

void creat

personnode *person;

person=(personnode *)malloc(sizeof(personnode));

printf(" 请输入 the filename:");

scanf("%s",filename);

if((fp=fopen(filename,"w+")null)

printf(" 请输入姓名,学号 (the same length),寝室号,剩余空间,endwith #");

scanf("%s",person->name);

while(strcmp(person->name,"#

fclose(fp);

void readfile()

printf(" please enter the fileroad:");

scanf("%s",filename

if((fp=fopen(filename,"r+")null)

fclose(fp);

void output()

personnode *person;

long offset1,offset2;

char name1[8],name2[8],name3[8];

char xh1[16],xh2[16],xh3[16];

char fh1[30],fh2[30],fh3[30];

person=(personnode *)malloc(sizeof(personnode));

if((fp=fopen(filename,"r"))null)

while(!feof(fp))

while(!feof(fp))

while(!feof(fp))

offset1=ftell(fp);

fscanf(fp,"%s%s%s",person->name,person->xh,person->fh);

strcpy(name1,person->name);

strcpy (xh1,person->xh);

strcpy(fh1,person->fh);

if(feof(fp)) break;

offset2=ftell(fp);

fscanf(fp,"%s%s%s",person->name,person->xh,person->fh);

strcpy (name2,person->name);

strcpy(xh2,person->xh);

strcpy(fh2,person->fh);

b=strlen(xh1);

c=strlen(xh2);

d=strcmp(xh1,xh2);

if(b==c&&d>0)

strcpy(name3,name1);

strcpy(name1,name2);

strcpy(name2,name3);

strcpy(xh3,xh1);

strcpy(xh1,xh2);

strcpy(xh2,xh3);

strcpy(fh3,fh1);

strcpy(fh1,fh2);

strcpy(fh2,fh3);

fseek(fp,offset1,seek_set);

strcpy(person->name,name1);

strcpy(person->xh,xh1);

strcpy(person->fh,fh1);

fprintf(fp,"%10s%-20s%-50s",person->name,person->xh,person->fh);

strcpy(person->name,name2);

strcpy(person->xh,xh2);

strcpy( person->fh,fh2);

fprintf(fp,"%10s%-20s%-50s",person->name,person->xh,person->fh);

2019课程设计题目

课程设计。课程设计总体要求 根据菌种生理特性 产品生产基本工艺流程 总体生产规模 各工艺环节理论参数,通过计算获得实际的生产工艺流程与设备型号,并进一步通过计算实际的工艺参数与设备利用率,最终确认生产设计的合理性。课程设计任务书内容提纲。1 设计题目 给出了菌种生理特性 总体生产规模信息 2 基本工...

2019课程设计题目

1 高阶动态电路系统物理建模解法simulink simpowersystem程序设计。直接建立rlc电路物理模型文件,并在待测量元件支路中接入电流表模型,在元件两端并联电压表模型,在电路中接入信号源模型,加入必不可少的电力系统 研究的图形界面模型powergui,运行系统模型,给出所有关注支路的电...

0210804课程设计题目

0210804班。光电信息系统课程设计报告的内容和要求 1 封面 设计题目 学生姓名 班级 学号 2 正文 包括课题分析 设计方案 原理图等 3 总结 设计特点及补充说明,鉴别比较分析,个人体会等 4 参考文献及参考书。设计题目 1.光纤传感器在测量技术中的应用 2.利用激光衍射法,设计系统实现微丝...