1.课程设计目的 |
C语言课程设计是计算机科学与技术专业重要的实践性教学环节之一,本次设计结合实际应用的要求,使课程设计既覆盖C语言程序设计的知识点,又接近工程实际需要。本次设计的目的是通过课程设计的综合训练,培养学生实际分析问题、解决问题的能力,以及编程和动手能力,最终目标是通过课程设计这种形式,帮助学生系统掌握C语言程序设计这门课程的主要内容,养成良好的编程习惯,更好的完成教学任务。 |
2.课程设计任务与要求: |
要求: 本次课程设计利用《C语言程序设计》课程中所学到的编程知识和编程技巧,完成具有一定难度和工作量的程序设计题目,帮助学生掌握编程、调试的基本技能,独立完成所布置的任务。 要求: 1、对系统进行功能需求分析 2、设计合理的数据结构和系统框架 3、编程简练,程序功能齐全,能正确运行 4、说明书、流程图要清楚 5、课题完成后必须按要求提交课程设计报告 任务: 考勤系统设计 功能:设计一考勤系统。考勤信息记录了学生的缺课情况,它包括:缺课日期、第几节课、课程名称、学生姓名、学生学号、缺课类型(迟到、早退、请假及旷课)。系统具有以下功能:
课程设计报告内容包括以下几个方面:(1)课题的总体设计和算法分析;(2)程序流程图、函数说明、文件说明;(3)源程序代码清单;(4)测试数据和测试过程记录;(5)遇到的问题及解决方案分析;(6)课程设计小结。 |
3.课程设计说明书 |
一.系统分析 整体流程图:
二.概要设计 (1)模块说明: 1:录入学生的缺课情况:输入记录情况个数,录入缺课日期,录入第几节课,录入课程名称,录入学生姓名,录入学生学号,录入缺课类型。若记录一个缺课情况,则返回进入菜单。若记录多个缺课情况,继续录入缺课情况。 2:追加录入的缺课情况: 追加输入记录情况个数,录入缺课日期,录入第几节课,录入课程名称,录入学生姓名,录入学生学号,录入缺课类型。若记录一个缺课情况,则返回进入菜单。若记录多个缺课情况,继续录入缺课情况。 3:修改某个学生缺课记录模块:输入将要修改的学生姓名或学号。用1代表姓名,2代表学号。输入学生姓名或学号后确认是否修改。1修改,2不修改。修改内容:1代表修改日期,2代表修改课节,3代表课程名称,4代表缺课类型,然后数学正确信息修改。修改完成后进入菜单。 4:查询某个学生缺课情况模块:输入将要查询的学生姓名或学号。用1代表姓名,2代表学号。输入学生姓名或学号后将显示该学生的缺课情况。包括缺课日期、课节、课程名称、姓名、学号、缺课类型。查询完成后进入菜单。 5:统计某段时间内旷课学生的姓名及旷课次数:系统根据输入的信息筛选此时间段内的学生考勤信息,再按照学生的旷课次数由大到小降序排列。统计完后返回菜单 6:统计某段时间内存在学生旷课的课程及旷课人次:系统根据输入的信息筛选此时间段内的学生考勤信息,再按照课程次数由大到小降序排列。统计完后返回菜单 7:退出系统模块:退出系统。
(1)menu函数: (2)input函数: (3)Add追加函数一样 (4)change函数:该函数是用来修改学生缺课记录。 (5)search函数:该函数是查询某个学生的缺课情况。 (6)Recordstuent函数: |
4.课程设计成果 |
//代码部分展示,需要的请私信我,或者加QQ:1115395894(表明来意) #include"stdio.h" #include"stdlib.h" #include"string.h" struct Student { char name[20]; int count; }stu[100],temp; struct Allfunction { char date[20]; //缺课日期 int Classtime; //缺课时间 char ClassName[20]; //课程名称 char StudentName[20]; //学生姓名 int number; //学生学号 char Kind[10]; //缺课类型 }student[100]; struct lesson { char name[20]; int count; }lesson[20],temp1; int main() { void menu(); void input(void); //录入 void add(void); //追加录入 void change(void); //修改 void search(void); //查询 void Recordstuent(void); //统计某段时间内旷课学生姓名及旷课次数 void Recordclass(void); //统计某段时间内存在学生旷课的课程及旷课人次 int choose; while(1) {
menu(); //打印菜单主界面 printf("\n请选择您想要运行的菜单序号:\t\n"); scanf("%d",&choose); switch(choose) { case 1:input();break; case 2:add();break; case 3:change();break; case 4:search();break; case 5:Recordstuent();break; case 6:Recordclass();break; case 7:printf("\n 欢迎下次使用!再见!\n");break; default:printf("您输入的信息有误,请重新输入!\n"); } system("pause"); } return 0; } void menu() { printf("\n\n"); printf("*****************************************************************************\n"); printf("*---------------------------------------------------------------------------*\n"); printf("* 学生考勤管理系统 *\n"); printf("*---------------------------------------------------------------------------*\n"); printf("**********************************系统功能菜单*******************************\n"); printf("-----------------------------------------------------------------------------\n"); printf("*****************************************************************************\n"); printf("** 1、录入学生的缺课情况 ~ 2、追加录入的缺课情况 **\n"); printf("*****************************************************************************\n"); printf("** 3、修改学生的缺课记录 ~ 4、查询学生的缺课情况 **\n"); printf("*****************************************************************************\n"); printf("** 5、旷课学生姓名及旷课次数 ~ 6、有学生旷课的课程及旷课人次 **\n"); printf("*****************************************************************************\n"); printf("** 7、退出系统 **\n"); printf("*****************************************************************************\n"); printf("-----------------------------------------------------------------------------\n"); } 菜单:选择函数使用switch语句,在序号对应的功能后加上函数及break,输入序号以运行对应函数。 信息录入 追加录入: 修改学生缺课记录:在查询信息功能的时候,拥有姓名及学号两种搜索方法,选用if语句进行搜索方式的选择,以2与!2的选择以去除异常输入的情况。若无搜索结果,则输出“此同学无缺课记录!”。 查询学生缺课记录: 统计学生旷课次数: 统计有旷课学生的课程: 退出系统: |
5.课程设计心得 |
C语言课设——学生考勤管理系统
于 2024-06-24 17:44:03 首次发布