资源简介
里面有文档,有需自取,里面有文档,有需自取,里面有文档,有需自取
代码片段和文件信息
#include
#include
#include
#include
typedef struct pnode //结构体定义 用于存放学生信息的节点
{
char name [10]; //姓名
char num[16]; //学号
char dor[30]; //房号
char group[20]; //班级
}student;
char filename[20]; //文件名
FILE *fp; //指向文件的指针
void creat() // 创建一个二进制文件 用于存放学生数据
{ student *person;
person=(student *)malloc(sizeof(student)); //为节点分配内存
printf(“\n 请您输入文件名:\n“);
scanf(“%s“filename);
if((fp=fopen(filename“w+“))==NULL)
{printf(“\n 您没有输入文件名 不能找到文件“);exit(0);}
printf(“\n请输入学生的姓名 学号 房号 班级 用空格隔开 以#结束\n“);
scanf(“%s“person->name);
while(strcmp(person->name“#“)) { //该循环用于控制学生信息的录入 遇#结束 { scanf(“%s %s %s“person->numperson->dorperson->group);
fprintf(fp“%-10s%-10s%-10s%-10s\n“person->nameperson->numperson->dorperson->group);scanf(“%s“person->name);
}
fclose(fp);
}
void readfile() //文件读取函数
{ printf(“\n请输入文件名:\n“);
scanf(“%s“filename); //此处输入为文件的路径
if((fp=fopen(filename“r+“))==NULL)
{printf(“\n无法打开该文件:\n“);exit(0);}
fclose(fp);
}
void output() //输出函数 用于输出文件的全部信息
{ student *person;
long offset1offset2;
char name1[10]name2[10]name3[10];
char num1[16]num2[16]num3[16];
char dor1[30]dor2[30]dor3[30];
char group1[20]group2[20]group3[20];
person=(student *)malloc(sizeof(student));
if((fp=fopen(filename“r“))==NULL)
{printf(“\n 无法打开该文件“);exit(0);}
while(!feof(fp)) //此循环用于对文件数据中关键字学号进行从小到大冒泡排序
{ int abcd; //a为循环结束判定变量 b,c,d用于起泡排序学号交换的替换
if((fp=fopen(filename“r+“))==NULL) //冒泡排序
{printf(“\n 无法打开该文件“);exit(0);}
while(!feof(fp)) // 外部循环
{
while(!feof(fp)) //内部循环
{
offset1=ftell(fp); //获取文件内部当前指针位置fscanf(fp“%s%s%s%s\n“person->nameperson->numperson->dorperson->group);
strcpy(name1person->name);
strcpy (num1person->num);
strcpy(dor1person->dor);
strcpy(group1person->group);
if(feof(fp))
break; //文件结束 跳出循环
offset2=ftell(fp); //获取文件内部下一指针位置fscanf(fp“%s%s%s%s\n“person->nameperson->numperson->dorperson->group);
strcpy (name2person->name);
strcpy(num2person->num);
strcpy(dor2person->dor);
strcpy(group2person->group);
b=strlen(num1);
c=strlen(num2);
d=strcmp(num1num2);
if(b==c&&d>0) //如果 学号1大于等于学号2 则交换全部数据
{ strcpy(name3name1);
strcpy(name1name2);
strcpy(name2name3);
strcpy(num3num1);
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 12462 2017-06-25 21:58 宿舍管理系统\F1683108_张岩\宿舍管理系统.c
文件 388096 2017-11-27 22:01 宿舍管理系统\F1683108_张岩\宿舍管理系统.doc
目录 0 2017-11-27 22:01 宿舍管理系统\F1683108_张岩
目录 0 2017-11-27 22:00 宿舍管理系统
----------- --------- ---------- ----- ----
400558 4
相关资源
- 安排教学计划包括代码报告
- 树和森林--清华大学课程讲义-数据结
- 19年王道408+天勤数据结构讲解视频,
- 广工《算法和高级数据结构教程课程
- 广工《算法和高级数据结构教程》
- 数据结构课程设计——静态单链表操
- 简单的职工管理系统数据结构
- 求二叉树最大宽度 求二叉树最大宽度
- 数据结构和算法Flash动画演示
- 已知稀疏矩阵用三元组表示编写C=A*
- swust西南科技大学OJ数据结构80题答案
- 数据结构课设-文学研究助手
- 数据结构课程设计报告:招聘模拟
- 数据结构课程设计 宿舍管理系统
- 数据结构课程设计 宿舍管理查询软件
- 数据结构 课设 家谱管理系统
- 数据结构 课程设计 宾馆订房系统
- 利用后缀表达式计算中缀表达式的值
- 农夫过河问题 数据结构
- 电话客户服务模拟 数据结构课程设计
- 家庭成员问题数据结构
- 张铭版数据结构与算法代码
- 数据结构课程设计报告基于双向循环
- 数据结构课程设计 数据结构课程设计
- 数据结构课程设计——迷宫问题
- 教学计划编制数据结构课程设计报告
- 数据结构_运动会分数统计
- 数据结构与算法源代码 北大 张铭
- 数据结构课程设计报告 迷宫游戏
- KMP字符串模式匹配详解及程序
评论
共有 条评论