1、唐山学院课程设计 1 1 引言 凌阳, 拇指 凌阳 现今大学对学生成绩管理以及学生水平评定过程中 , 拇指 不仅依靠学生分数 , 拇指 而且把各个科目的掌握情况通过学分来反映 , 拇指 众所周知 , 拇指 大学人数众多 , 拇指 凌阳, 拇指 凌阳 单靠人工在纸质介质上记录 , 拇指 既 浪费资源又不方便管理 , 拇指 并且错误率高 , 拇指 学分管理系统就是基于现今大学在学生成绩管理过程中采用学分制 , 拇指 应运而生的计算机数据管理系统 , 拇指 对在校生进行学分数据录入、修改、删除、查找、排序以及对学分得分的初步统计 , 拇指 并存储学生学分数据的计算机数据管理系统 。 食指 利用学分管
2、理系统可以有效的帮助 管理者 , 拇指 来管理学生学分数据 , 拇指 并能够了解各个班级学生学分完成情况 ,拇指从而节约了管理过程中的人力物力 , 拇指 并且存贮方便、准确 。 食指 凌阳, 拇指 凌阳 学生学分管理系统是运行于计算机系统下的应用软件 , 拇指 主要用于对学生的学号、姓名以及各项学科学分进行录入、删除、修改、查询、排序、统计、存盘等操作 ,拇指 为学校的教师和学生提供了一个对学生学分进行管理和查看的平台 , 拇指 给用户提供了一个简单友 好的用户接口 , 拇指主要任务 如下: 凌阳, 拇指 凌阳 1.1 查看所有学生信息 凌阳, 拇指 凌阳 根据菜单提示 , 拇指选择该功能 ,
3、 拇指 能够 逐条显示全部学生学分记录 凌阳, 拇指 凌阳 1.2 输入学生记录 凌阳, 拇指 凌阳 用户根据菜单提示选择输入学生记录选项 , 拇指 进行有关学生的学号、姓名、班级、基础课学分、专业课学分、选修课学分、人文类课学分以及实验课学分的录入 。食指可一次性输入多条学生的学分信息记录 。 食指 凌阳, 拇指 凌阳 1.3 删除学生记录 凌阳, 拇指 凌阳 根据提示 , 拇指 用户输入要进行删除学生的学号 , 拇指 如果在不存在该学号 , 拇指 则显示没有找到该学生;如果在文件中有该学号的信息存在 , 拇指 则将该学号所对应的姓名、学号、班级、各科学分等在对应文件中加以删除 。 食 指
4、凌阳, 拇指 凌阳 1.4 修改学生记录 凌阳, 拇指 凌阳 根据提示 , 拇指 用户输入要进行修改学分记录的学生的学号 , 拇指 如果在文件中不存在该学号 , 拇指 则显示没有找到该学生;如果在文件中有该学生的信息存在 , 拇指 则将提示用户选择要修改的某课程 , 拇指 当用户选择某课程的代码后 , 拇指 则将显示你所要修改的课程 。 食指然后提示用户选择是否继续进行修改操作 。 食指 凌阳, 拇指 凌阳 1.5 查询学生信息 凌阳, 拇指 凌阳 查询学生信息 , 拇指 分为根据学号查询和根据班级查询两个具体需求 , 拇指 菜单选项分别提示用户输入要查询学生信息的学号或班级 , 拇指 如果
5、在磁盘文件中有对应的输入信息 , 拇指则提示用户已找到 , 拇指 并逐项列出对应查找到的学生学分状况 。 食指 凌阳, 拇指 凌阳 1.6 根据学号排序学生记录 凌阳, 拇指 凌阳 该项功能根据学生的学号项进行排序 , 拇指 以便用户对学生学分状况有较为直观方便的了解 , 拇指 并能够让学号有规律排列的学生项 , 拇指 在显示时集中出现 , 拇指 让浏览者更加清楚明白 。 食指 凌阳, 拇指 凌阳 1.7 统计学生学分完成情况 凌阳, 拇指 凌阳 唐山学院课程设计 2 该项是统计各班学生的学分完成情况 , 拇指可以很方便了解该班学生的学习水平 。 食指 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳
6、凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 2 总体设计 凌阳, 拇指 凌阳 进行总体设计 ,以比较抽象的方式概括的确定系统如何完成预定的任务 , 拇指 进而确定组成系统的每个子程序的结构 , 拇指 从而将一个大的程序按功能分割成一些模块 ,拇指 是每个模块具有功能单一、结构清晰、接口简单易于理解的小程序 , 拇指 并且确
7、定 各个函数之间的调用关系 。 食指 凌阳, 拇指 凌阳 本系统主要应用结构化的设计思想 , 拇指 实现学生学分的输入、删除、修改、查询以及浏览 等 管理功能 , 拇指 各主要模块的数据均存储在文件中 , 拇指 因此包含对文件的读、写等基本操作 。 食指 在软件开发过程中应用了高级语言程序设计中的基本控制结构 ,拇指 如选择、循环、 顺序 等 结构 。 食指 系统的设计方法是结构化设计方法 , 拇指 采用 C 语言进行开发 。 食指 凌阳, 拇指 凌阳 系统功能结构图 , 拇指如图 1所示 。 食指 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指
8、凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 退出系统 查看所有学生信息 输入学生记录 删除学生记录 修改学生记录 根据学号查询学生记录 根据班级查询学生记录 根据学号排序学生记录 统计学生学分完成情况 学分管理程序 图 1 系统结构图 唐山学院课程设计 3 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳
9、凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 3 详细设计 凌阳, 拇指 凌阳 本系统采用主函数调用子函数的设计方法 , 拇指 先整体在逐步细化的过程 , 拇指 具体方法如下: 凌阳, 拇指 凌阳 在主函数前 , 拇指进行子函数 声明 , 拇指 如下: 凌阳, 拇指 凌阳 void 凌阳, 拇指 凌阳 menu();/菜单函数 凌 阳, 拇指 凌阳 void 凌阳, 拇指 凌阳 to_menu();/返回菜单函数 凌 阳, 拇指 凌阳 void 凌阳, 拇指 凌阳 view_data();/查看所有学生信息 凌 阳, 拇
10、指 凌阳 void 凌阳, 拇指 凌阳 save_data();/保存数据 凌阳, 拇指 凌阳 void 凌阳, 拇指 凌阳 add_data();/输入学生数据 凌阳, 拇指 凌阳 void 凌阳, 拇指 凌阳 read_data();/读取数据 凌阳, 拇指 凌阳 void 凌阳, 拇指 凌阳 delete_data();/删除数据 凌阳, 拇指 凌阳 void 凌阳, 拇指 凌阳 edit_data();/修改数据 凌阳, 拇指 凌阳 void 凌阳, 拇指 凌阳 query_data_no();/查找(按学号) 凌 阳, 拇指 凌阳 void 凌阳, 拇指 凌阳 query_data_
11、clas();/查找(按班级) 凌 阳, 拇指 凌阳 void 凌阳, 拇指 凌阳 sort_data_no();/排序(学号) 凌阳, 拇指 凌阳 void 凌阳, 拇指 凌阳 tongji();/统计某班学生学分完成情况 凌 阳, 拇指 凌阳 3.1 主函数设计 凌阳, 拇指凌阳 编写主函数 , 拇指 主函数运行时 , 拇指 先调用 void 凌阳, 拇指 凌阳 read_data()函数 , 拇指 将数据从文件读 取 到结构体数组中 , 拇指 再调用菜单函数 void 凌阳, 拇指 凌阳 menu(), 拇指 显示菜单选择项 , 拇指 设计一个 while循环 , 拇指 让函数进入循环
12、, 拇指 设计 switch 函数 , 拇指 对 菜单 各项功能进行 选择 , 拇指 使各项功能能够运行 , 拇指最后退出循环 , 拇指 调用 to_menu()函数 , 拇指返回主菜单 。 食指 凌阳, 拇指 凌阳 main()凌 阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 int 凌阳, 拇指 凌阳 fun;凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 read_data();凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 menu();凌 阳, 拇指 凌阳 凌阳, 拇指 凌阳 while(1)凌 阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 唐山学院课程设计 4 凌阳, 拇指
13、 凌阳 凌阳, 拇指 凌阳 printf(“请输入功能号 0-8:“,凌 阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 scanf(“%d“,凌 阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 switch(fun)凌 阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 case 凌阳, 拇指 凌阳 0: 凌阳, 拇指 凌阳 break; 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇
14、指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 / 凌阳, 拇指 凌阳 退出 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 case 凌阳, 拇指 凌阳 1: 凌阳 ,拇指 凌阳 view_data();break; 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 / 凌阳, 拇指 凌阳 查看所有学生信息 凌阳, 拇指 凌阳 凌阳
15、, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 case 凌阳, 拇指 凌阳 2: 凌阳, 拇指 凌阳 add_data(); 凌阳, 拇指 凌阳 break; 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 / 凌阳, 拇指 凌阳 输入学生记录 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 case 凌阳, 拇指 凌阳 3: 凌阳, 拇指 凌阳 delete_data();break; 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 / 凌阳, 拇
16、指 凌阳 删除学生记录 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 case 凌阳, 拇指 凌阳 4:edit_data();break; 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 / 凌阳, 拇指 凌阳 修改学生记录 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 case 凌阳, 拇指 凌阳 5: 凌阳, 拇指 凌阳 query_data_no();break; 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 /
17、凌阳, 拇指 凌阳 查询(学号) 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 case 凌阳, 拇指 凌阳 6:query_data_clas();break; 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 / 凌阳, 拇指 凌阳 查询(班级) 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 case 凌阳, 拇指 凌阳 7:sort_data_no(); 凌阳, 拇指 凌阳 break; 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 / 凌阳, 拇指 凌阳 排序(学号) 凌阳, 拇指 凌阳 凌阳,
18、 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 case 凌阳, 拇指 凌阳 8:tongji();break; 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 /统计某班学生学分完成情况 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 default:printf(“输入错误! “);break;凌 阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 if(fun=0) 凌阳, 拇指 凌阳 break; 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 to_menu();凌 阳, 拇指
19、凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 3.2 子函数设计 凌阳, 拇指 凌阳 3.2.1菜单函数设计 凌阳, 拇指 凌阳 菜单函数首先运行库函数 system(“cls“)进行清屏 , 拇指 然后运行各个 printf 语句 , 拇指 显示主菜单 , 拇指如图 2所示 。 食指 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指
20、 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳凌阳, 拇指
21、凌阳 3.2.2返回主菜单函数设计 凌阳, 拇指 凌阳 设计字符 c1,c2,用 c1来接受第一次输入的回车 , 拇指 然后再次输入回车时 , 拇指 调用函数menu(), 拇指返回主菜单 , 拇指 来实现各次操作完成后返回主菜单的任务 。 食指 凌阳, 拇指 凌阳 3.2.3查看所有学生信息函数设计 凌阳, 拇指 凌阳 设计 for循环 , 拇指 定义 i=0, 拇指 学生总数为 dd.count, 拇指 利用 for循环 , 拇指 可以显示所有学图 2 系统主菜单 唐山学院课程设计 5 生已经记录的信息 。 食指如图 3所示 : 凌阳 ,拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳
22、凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 3.2.4数据从结构体数组保存到文件的函数设计 凌阳, 拇指 凌阳 创建文件 data.txt, 拇指 利用 for循环 , 拇指 把数据逐个写入文件 。 食指 凌阳, 拇指 凌阳 3.2.5输入学生记录函数设计 凌阳, 拇指 凌阳 根据 printf语句提示 , 拇指 逐个输入学号 、姓名、班级 , 拇指 调用库函数
23、 strcpy(), 拇指 把各个输入项 , 拇指 拷贝到数组中 , 拇指 再对各项分数进行赋值 , 拇指 如果大于最大值 , 拇指 则显示最大值 , 拇指 设计成循环模式 , 拇指 末尾提示是否继续添加数据 , 拇指 利用 break终止循环 , 拇指 最后存盘 , 拇指退出程序 , 拇指 显示主菜单 。 食指 输入 学号 为 106的 学生信息 后如图 4所示 。 食指 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌
24、阳, 拇指 凌阳 3.2.6删除学生记录函数设 计 凌阳, 拇指 凌阳 设计 for 循环以及库函数 strcmp(), 拇指 把输入的学号 , 拇指 跟已有的学号进行对比 , 拇指 如果没有相同的学号 , 拇指 则提示 没有找到该学生 , 拇指 如果找到相同的学号 , 拇指 则把该学号以后的数据向前移动一位 , 拇指 再把学生总数减一 , 拇指 实现删除学生 。 食指 删除过程如下图5和图 6所示 。 食指 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 图 3 查看所有学生信息 图 4 输入学生信息 唐山学院课程设计 6 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌
25、阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 3.2.7修改学生记录函数设计 凌阳, 拇指 凌阳 根据 printf语句提示 , 拇指 输入要修改的学生的学号 , 拇指 设计 for循环和库函数 strcmp,拇指 对输入学号进行查找 , 拇指 如果没有查找到
26、, 拇指 显示没有找到该学生 , 拇指 如果能够查找到给学生 , 拇指 则进一步提示输入学生的姓名、班级 , 拇指 然后选择要修改的学生 记录项 ,拇指 最后提示 , 拇指 是否继续录入 , 拇指 退出后可返回主菜单 。 食指 修改过程如下图 7和图 8所示 。食指 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指
27、 凌阳 图 5 输入要删除的学生 图 6 删除后显示 图 7 编辑学生信息窗口 唐山学院课程设计 7 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 3.2.8查询学生记录函数设计 凌阳, 拇指 凌阳 查询学生记录分为 , 拇指 根据学生学号查询和根据班级查询 该班所有学生的成绩 , 拇指设计 for 循环和调用 ctrcmp()函数 , 拇指 把要查询的结果进行显示 , 拇指 如果没有找到与输入匹配的字符 , 拇指 则显示没有找到该班级或没有
28、找到该学生 。 食指 查询显示如下图 ,拇指根据学号查询如图 9所示 , 拇指 根据班级查询如图 10所示 。 食指 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌 阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 3.2.9排序函数设计 凌阳, 拇指 凌阳 设计 while循环 , 拇指 用 for循环和库函数
29、strcmp将学号依次比较 , 拇指 然后用冒泡排序法将学号数据由小到大排列 , 拇指 并且各数据交换 , 拇指 完成排序 。 食指 排序结果如下图 11所示 。 食指 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 图 8 修改学生信息完成 图 9 根据学号查询学生信息 图 10 根据班级查询学生信息 唐山学院课程设计 8 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 3.2.10统计函数设计 凌阳, 拇指
30、凌阳 输入要统计的班级号 , 拇指 调用 strcmp 函数 , 拇指 查找相同班级号的学生数据 , 拇指 再设计for循环并调用 strcmp函数 , 拇指 把差找出的学生数据 , 拇指 与要求完成的学分标准进行对比 , 拇指 统计出符合要求和不符合要求的学生个数 , 拇指 最后显示 。 食指 统计结果如下图12所示 。 食指 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳,
31、拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 4 总结 凌阳, 拇指 凌阳 本系统可以完成学生学分的录入、查询、修改、删除、排序以及班级总体水平的图 11 根据学号排序结果 图 12 根据班级统计结果 唐山学院课程设计 9 统计 功能 , 拇指 但是对于系统的访问权限设置 , 拇 指访问 途径 (网络访问还是单机使用)等功能 , 拇
32、指 还没有提出解决的方案 , 拇指 在这些问题上还有待于对系统的进 一步开发完善 。 食指 学分管理系统是介于学生管理者和学生之间的一个数据库 平台 , 拇指 他让数据管理者可以方便的录入修改学生成绩 , 拇指 在管理过程中可以节省时间 , 拇指 增加工作效率 ,拇指 假如学生可以通过网络来进行查询 , 拇指 就可以避免学分改动而引发的矛盾 , 拇指 同时也可以给学生带来方便 , 拇指 因此在访问途径上可以设置为单机服务器管理 , 拇指 网络访问的数据库模式 , 拇指来为学生和学校之间提供一个信息查询的平台 。 食指 凌阳, 拇指 凌阳 本 系统的开发过程 , 拇指 主要利用了 for循环、
33、switch循环、库函数 strcmp 与 strcpy等 , 拇指 在排序函数设计时 , 拇指 略显繁琐 , 拇指 有待于使用者在使用时 , 拇指 提出宝贵的意见和建议 。 食指 凌阳, 拇指 凌阳 通过对本程序的开发 , 拇指 让我了解到一个完整系统的开发过程 , 拇指 将一个大的工程问题可以细化到各个模块 , 拇指 让每个模块可以独立去完成各自的功能 , 拇指 最后用函数之间的调用来解决程序开发的全部问题 , 拇指 让我在以后开发程序的道路上更加拥有信心 。 食指 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳
34、, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 参考文献 凌阳, 拇指 凌阳 1 凌阳, 拇指 凌阳 赵启兰库存管理 M北京:高等教育出版社 , 拇指 2005 凌阳, 拇指 凌阳 2 凌阳, 拇指 凌阳 谭浩强 , 拇指 张基温 C 语言程序设计教程 (第 3版 )M北京:高等教育出版社 ,拇指 2006 凌阳, 拇指 凌阳 3 凌阳, 拇指 凌阳 黄明、梁旭、万洪莉
35、 C语言课程设计 M北京:电子工业出版社 , 拇指 2006 凌阳, 拇指 凌阳 4 凌阳, 拇指 凌阳 郭宁 ,郑小玲管理信息系统 M北京:人民邮电出版社 , 拇指 2006 凌阳, 拇指 凌阳 5 凌阳, 拇指 凌阳 赵池龙 , 拇指 杨林 , 拇指 陈伟实用软件工程 M北京:电子工业出版社 , 拇指 2006 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 唐山学院课程设计 10 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳
36、 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 附 凌阳, 拇指 凌阳 录 凌阳, 拇指 凌阳 #include 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 #inclu
37、de 凌 阳, 拇指 凌阳 凌阳, 拇指 凌阳 #include 凌阳, 拇指 凌阳 凌 阳, 拇指 凌阳 #include 凌阳, 拇指 凌阳 凌 阳, 拇指 凌阳 #define 凌阳, 拇指 凌阳 MAX 凌阳, 拇指 凌阳 60 凌阳, 拇指 凌阳 struct 凌阳, 拇指 凌阳 student 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 char 凌阳, 拇指 凌阳 no10; 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 / 凌阳, 拇指 凌阳 学号 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 char 凌阳, 拇指 凌阳 name50; 凌阳, 拇指 凌阳 / 凌阳, 拇指 凌阳 姓名 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 char 凌阳, 拇指 凌阳 clas5; 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 / 凌阳, 拇指 凌阳 班级 凌阳, 拇指 凌阳