当前位置:文档之家› 高校新生报到系统 C语言课程设计

高校新生报到系统 C语言课程设计

三、主要截图
输入学生信息截图
6
沈阳航空航天大学设计用纸
新生报到截图
查询未报到学生截图
学生转专业截图
7
沈阳航空航天大学设计用纸
按学号显示学生信息截图 四、技术要点
本程序主要由五个自定义函数和一个主函数组成,其中主函数 以菜单的形式调用其他函数来实现要求的所有功能。在这些函数当 中,录入数据信息函数,新生报到函数,查询未报到的学生函数, 转专业函数,按学号显示学生信息函数是程序中较为核心的部分, 下面分别进行说明。
scanf("%s",ss.xuehao); fprintf(fp,"%s\t",ss.xuehao); printf("\n 请输入学生姓名 :");
scanf("%s",ss.xingming); fprintf(fp,"%s\t",ss.xingming); printf("\n 请输入学生省份 :");
1、录入数据信息函数:主要实现程序最初运行时新生数据信 息的录入。
2 、新生报道函数: 报道新生,录入新生数据信息。 3、查询未报到的学生函数: 在文件中读取学生信息,把没有 报到的学生输出。 4 、学生转专业函数: 对报道的学生信息数据进行修改,输 入学生学号和学生的新专业。 5、按学号显示学生信息函数:实现的是按学号显示学生记录 信息。
(4) 学生转专业函数
void zhuan() { FILE *fp; int i, sum,baodao; char number[10]; struct student ss[20];
printf("\n 请输入学生学号 :"); scanf("%s",number); if((fp=fopen("d:\\student.txt","r+"))==NULL) { printf("\n 不能打开文件"); return; } i=0; baodao=0;
4
沈阳航空航天大学设计用纸
(3 )查询学生信息函数
定义学生结构体变量 st 定义文件指针 fp 打开文件 student.dat 输入查询学生的学号 number
当文件没有结束
在文件中学生学号、姓名、省份、系别 专业,高考分数。
St.number==number?
N
Y
输出学生信息
关闭文件 退出
5
沈阳航空航天大学设计用纸
No
n=2
Yes
No
录入
报到
Yes
n=3
No
查询 未报 报到的 学生
Yes 转专业
n=4 No
n=5 Yes
退出
3
沈阳航空航天大学设计用纸
(2) 录入函数流程图
定义学生结构体变量 st 定义文件指针 fp 建立文件 student.dat test =0 当 test ==1
输入学生学号、姓名、省份、系别 专业,高考分数。 把学生信息写入到文件中 输入 test 关闭文件 退出
一、课程设计时间、
2011~12 第二学期第 16 周,共计 1 周,20 学时。 三、课程设计内容:
用 C 语言编写软件完成以下任务: ①录入新生信息(新生学号,姓名,来自省份,专业,高考分数),
并保存到磁盘文件中; ② 新生报到签到; ③ 查询未报到的学生; ④ 给学生转专业; ⑤ 按学号显示学生信息;
fscanf(fp,"%s\t%s\t%s\t%s\t%d\t%d\n",ss[i].xuehao,ss[i].xingming,ss[i].she ngfen,ss[i].zhuanye,&ss[i].fenshu,&ss[i].baodao);
if(strcmp(ss[i].xuehao,number)==0) {
void chaxun_not() { FILE *fp; int i, sum,baodao; char number[10]; struct student ss[20];
if((fp=fopen("d:\\student.txt","r+"))==NULL) { fscanf(fp,"%s\t%s\t%s\t%s\t%d\t%d\n",ss[i].xuehao,ss[i].xingmi ng,ss[i].shengfen,ss[i].zhuanye,&ss[i].fenshu,&ss[i].baodao);
主函数
#include "stdlib.h" #include "stdio.h" #include "string.h" //定义结构体 struct student { char xuehao[50]; char xingming[50]; char shengfen[50];
8
沈阳航空航天大学设计用纸
(2) 新生报到函数
新生报到函数,以读写的方式打开文件 student.txt,输入报到 学生的学号,在文件 student.txt 中读取学生信息并且把学生信息 与输入的学生学号进行判断,如果两个学号相同,则学生报到信息 修改为 1。关闭文件。
void xsbd() { FILE *fp; int i, sum,baodao; char number[10]; struct student ss[20]; //打开文件 student.txt if((fp=fopen("d:\\student.txt","r+"))==NULL) {
hengfen,ss[i].zhuanye,ss[i].fenshu,ss[i].baodao);
} /*关闭文件*/ fclose(fp); }
(3)查询未报到的学生函数
查询没有报到的学生信息。打开文件 student.txt,并且逐行 读取学生信息,判断学生是否报到,没有报到输出学生信息。之后 判断文件是否结束,当文件结束时,关闭文件退出。否则继续读取 下一个学生信息并且继续进行判断,直到文件结束为止。
12
沈阳航空航天大学设计用纸
while(!feof(fp)) { fscanf(fp,"%s\t%s\t%s\t%s\t%d\t%d\n",ss[i].xuehao,ss[i].xingmi ng,ss[i].shengfen,ss[i].zhuanye,&ss[i].fenshu,&ss[i].baodao); if(strcmp(ss[i].xuehao,number)==0)
9
沈阳航空航天大学设计用纸
scanf("%d",&ss.fenshu); fprintf(fp,"%d\t",ss.fenshu); ss.baodao = 1; fprintf(fp,"%d\n",ss.baodao); printf("\n 继续录入学生信息请输入 1 ,退出请输入其它数 字"); scanf("%d",&test); } // 关闭文件 fclose(fp); }
baodao++; ss[i].baodao = 2; } i++; } sum = i; fclose(fp); /*建立文件 studnet.txt*/ fp=fopen("d:\\student.txt","w+"); /*向文件中写入学生信息*/ for(i=0;i<sum;i++) { fprintf(fp,"%s\t%s\t%s\t%s\t%d\t%d\n",ss[i].xuehao,ss[i].xingming,ss[i].s
课程设计说明书:
课程结束后,上交课程设计说明书和源程序。课程设计说明书的内
容参见提供的模板。
五、指导教师:________
学生签名:________
六、成绩 七、教师评语
沈阳航空航天大学设计用纸
目录
一、需求分析....................................................... 2 二、设计分析...........................................................3 三、主要截图....................................................... 6 四、技术要点....................................................... 8 五、个人总结...................................................... 15 六、参考文献...................................................... 15 七、源程序.......................................................... 15
char zhuanye[50]; int fenshu; int baodao; };
(1) 录入数据信息函数
输入学生信息函数,函数的功能是输入学生信息并且把学生信 息存入文件中。先用 fopen 语句以只写的方式打开文件,输入一名 学生的学号、姓名等基本信息并且把学生信息写入到文件中。关闭 文件,退出
printf("\n 不能打开文件");
11
沈阳航空航天大学设计用纸
return; } i=0; baodao =0; while(!feof(fp)) {
相关主题