C课设报告:多功能上课点名系统 - 图文(2)

2019-06-11 00:28

C语言课程设计实习报告

四 详细设计

1 结构体及函数

学生信息(姓名、学号)存在结构体Student中,各功能由函数实现。 #include

#include #include #include #include #define N 57

typedef struct //存储学生信息 {

char num[9]; char name[7];

}Student;

void choose(Student *stu,int *a,int *b,int *c); //choose a student int minimum(int *a); //数组最小值函数

void function(Student *stu,int *a,int *b,int *c); //主菜单函数 void pickn(Student *stu,int *a,int *b,int *c); //选多个学生的函数 void pickc(Student *stu,int *a,int *b,int *c); //连续选学生的函数

6

C语言课程设计实习报告

void pickhistory(Student *stu,int *b,int *c); //点旷到学生的函数 void printrecord(Student *stu,int *a,int *b); //浏览历史函数

void read(Student *stu); //读取student.txt的函数 void saverecord(int *a,int *b); //存储历史记录到sturecord.dat的函数 void loadrecord(int *a,int *b); //读取文件 sturecord.dat的函数 void clear(int *a,int *b); //清除历史记录函数

void title(); //打印标题函数 void menu(); //打印目录函数 void borderup(); //打印上边界函数 void borderdown(); //打印下边界函数

2 主函数

主函数有读取学生信息、读取历史记录、显示菜单、点名、存储信息的功能,全部用函数实现。

int main() {

int a[N]={0},b[N]={0},c[N]={0}; // a,b,c数组分别存被点次数、 Student stu[N]; //旷课次数、本次上课是否被点

srand((unsigned)time(NULL));

7

C语言课程设计实习报告

read(stu); loadrecord(a,b);

title(); menu();

function(stu,a,b,c);

saverecord(a,b); return 0; }

开始 显示功能 判断 根据判断的值调用各功能模块函数 结束 8

C语言课程设计实习报告

3 各函数设计

(1) 存读数据函数

1 从student.txt读取学生信息的函数

void read(Student *stu) {

FILE *fp;

int i; //circulate

char c,d[5],e,*p; //\判断是否为名字的字符,\存名字后

的空格与回车,\存中间的空格

fp=fopen(\ //open file if(fp==NULL) {

printf(\

exit (0); }

for(i=0;i

fgets(stu[i].num,9,fp); //学号 e=fgetc(fp);

9

C语言课程设计实习报告

}

p=&stu[i].name; //名字 c='\\0';

}

while(c!='\\t') { }

c=fgetc(fp); if(c!='\\t') { } else { } *p='\\0'; fgets(d,5,fp); *p=c; p++;

fclose(fp);

2 保存点名记录到sturecord.dat的函数

void saverecord(int *a,int *b)

10


C课设报告:多功能上课点名系统 - 图文(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:word单项操作题目操作步骤图解说明(全)(2010版本新)

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: