课程设计班级系统管理.doc
《课程设计班级系统管理.doc》由会员分享,可在线阅读,更多相关《课程设计班级系统管理.doc(25页珍藏版)》请在沃文网上搜索。
1、C语言程序设计课程设计评语:考勤(10)纪律(10)过程(40)设计报告(30)答辩(10)总成绩(100)专 业: 自动控制 班 级: 控 2 姓 名: 学 号: 指导教师: 一、引言C语言课程设计是为电子科学与技术等专业学生开设的专业基础实践课程,本课程是一门必修课,是在学习C语言程序设计课程之后进行的一个实践教学环节。课程设计的目的是: 1、进一步培养学生结构化程序设计的思想,加深对高级语言基本语言要素和控制结构的理解。 2、 针对C语言中的重点和难点内容进行训练,独立完成有一定工作量的程序设计任务,同时强调好的程序设计风格。 3、掌握C语言的编程技巧和上机调试程序的方法。 4、掌握程序
2、设计的常用算法。二、基础题1题目编写求以下函数。2解题思路用三个for循环先分别计算出m,n.(m-n)的阶乘,然后计算函数。3. 源程序#includeint main()int m,n,i,j,k;int C,C1=1,C2=1,C3=1;printf(输入两个正整数m,n(mn):n);scanf(%d %d,&m,&n);for(i=1;i=m;i+)C1=C1*i;for(j=1;j=n;j+)C2=C2*j;for(k=1;k=(m-n);k+)C3=C3*k;C=C1/(C2*C3);printf(m=%dnn=%dn,m,n);printf(C=%dn,C);return 0;
3、4. 流程图图1.1 基础题流程图5. 运行结果在程序中输入正整数10和8运行结果如图1.2所示。 图1.2二、改错题1题目给定程序MODI1.C中,fun函数的功能是:先从键盘上输入一个3行3列矩阵的各个元素的值,然后输出主对角线元素之积。请改正程序中的错误,或在横线处填上适当的内容并把横线删除,使它能得出正确的结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。程序如下:#include int fun ()int a 3 3, sum;int i, j;_;for (i=0;i3;i+) for (j=0;j3;j+) scanf (%d a i j); for (i
4、=0; i3; i+)sum=sum*ai i;printf (Sum=%dn, sum);main () fun (); 2错误分析#include int fun ()int a 3 3, sum;int i, j;_ /sum未附初值for (i=0;i3;i+) for (j=0;j3;j+) scanf (%d a i j); /输入的格式控制符不对,后面的变量未取地址 for (i=0; i3; i+)sum=sum*ai i;printf (Sum=%dn, sum); /换行符缺少“”main () fun (); 3流程图 图2.1 调用函数流程图 图2.2 主函数流程图4改
5、正后的源程序#include int fun ()int a33, sum;int i,j;sum=1;for(i=0;i3;i+) for (j=0;j3;j+) scanf(%d,&aij); for (i=0; i3; i+)sum=sum*ai i;printf (Sum=%dn, sum);main () fun (); 5运行结果该函数的功能是计算一个三阶矩阵的对角线个元素的乘积,输入1、2、3、6、5、4、7、8、9对角线的元素分别为1、5、9,运行结果如图2.3所示。图2.3三、综合题1题目问题描述:对一个有N个学生的班级,通过该系统实现对该班级学生的基本信息进行录入、显示、修
6、改、删除、保存等操作的管理。功能要求:1. 本系统采用一个包含N个数据的结构体数组,每个数据的结构应当包括:学号、姓名、性别、年龄、备注。2. 本系统显示这样的菜单:请选择系统功能项:a. 学生基本信息录入b. 学生基本信息显示c. 学生基本信息保存d. 学生基本信息删除e. 学生基本信息修改(要求先输入密码)f. 学生基本信息查询(1) 按学号查询(2) 按姓名查询(3) 按性别查询(4) 按年龄查询g. 退出系统3. 执行一个具体的功能之后,程序将重新显示菜单。4. 将学生基本信息保存到文件中。5. 进入系统之前要先输入密码。算法提示:1 数据结构:结构体类型数组2 数据库结构:下表构成该
7、系统的基本数据库。姓名学号性别年龄备注charcharcharintchar测试数据:学生人数N=10其它:对该系统有兴趣的同学可以在实现上述基本功能后,完善系统的其它功能。2. 解题思路2.1 程序的模块组成: 本程序由void menu()函数、void input()函数、void save(int)函数、void display()函数、void del()函数、void add()函数、void search()函数、void search_num()函数、void search_name()函数、void search_sex()函数、void search_age()函数void
8、 modify()函数共十二个函数组成。2.2各个调用函数的功能的实现如下:1)信息的录入主要运用循环语句将各个学生的信息依次输入。2)信息的显示主要运用循环语句将各个学生的信息依次显示出来。3)信息的保存是将信息重写到保存文件中,信息保存在c:student.text 中。4)信息的删除是运用字符串运用函数,将空格复印到信息字符上达到删除效果。5)信息的修改是输入学号用循环语句将需修改的信息显示出来,然后再输入新信息。6)信息的查询是通过switch语句将查询方式连接起来,并在各个查询方式中用循环语句将要查询的信息显示出来。3流程图图3.1 主函数模块图图3.2 save函数流程图图3.3
9、del函数流程图4源程序:#include #include #include #define N 100struct student char num10; char name10; char sex; char age10; char beizhu50; char pass10;st100;void menu();void input();void save(int);void display();void del();void add();void search();void search_num();void search_name();void search_sex();void s
10、earch_age();void modify();void menu() printf(n); printf( *欢*迎*使*用*n); printf(n); printf(n); printf(n); printf( *学生档案管理*n); printf(n); printf( 1.录入学生信息); printf( 2.显示学生信息n); printf( 3.查询学生信息); printf( 4.删除学生信息n); printf( 5.添加学生信息); printf( 6.修改学生信息n); printf( 7.退出n); printf(n); printf( *谢谢使用*n); prin
11、tf(n); printf(n); printf( 自动控制n); printf(n); printf(n); printf( 管理员:马军 马建华 李雪菲n); printf(n); printf(n); void main() menu(); /调用菜单函数/ int n,flag; char a; do printf(请选择你需要操作的步骤(1-7):n); scanf(%d,&n); if(n=1&n=7) flag=1; break; else flag=0; printf(您输入有误,请重新选择!); while(flag=0); while(flag=1) switch(n) c
12、ase 1:printf( 输入学生信息 n);printf(n);input();break; case 2:printf( 显示学生信息 n);printf(n);display();break; case 3:printf( 查询学生信息 n);printf(n);search();break; case 4:printf( 删除学生信息 n);printf(n);del();break; case 5:printf( 添加学生信息 n);printf(n);add();break; case 6:printf( 修改学生信息 n);printf(n);modify();break; c
13、ase 7:printf(欢迎下次光临n);exit(0);break; default :break; getchar(); printf(n); printf(是否继续进行(y or n):n); scanf(%c,&a); if(a=y) flag=1; system(cls); menu(); printf(请再次选择你需要操作的步骤(1-7):n); scanf(%d,&n); printf(n); else exit(0); void input() int i,m; printf(请输入需要创建信息的学生人数(1-100):n); scanf(%d,&m); for (i=0;i
14、m;i+) printf(请输入学号: ); scanf(%s,sti.num); getchar(); printf(请输入姓名: ); scanf(%s,sti.name); getchar(); printf(请输入性别(f-女 m-男): ); scanf(%c,&sti.sex); printf(请输入年龄: ); scanf(%s,&sti.age); getchar(); printf(请输入备注: ); scanf(%s,sti.beizhu); printf(请输入密码: ); scanf(%s,sti.pass); getchar(); printf(n); printf(
15、n创建完毕!n); save(m);void save(int m) int i; FILE*fp; if (fp=fopen(c:student.txt,wb)=NULL) printf (cannot open filen); exit(0); for (i=0;im;i+) if (fwrite(&sti,sizeof(struct student),1,fp)!=1) printf(file write errorn); fclose(fp);int load() FILE*fp; int i=0; if(fp=fopen(c:student.txt,rb)=NULL) printf
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
20 积分
下载 | 加入VIP,下载更划算! |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 课程设计 班级 系统管理