当前位置: 首页 > news >正文

网站 宗旨东莞软文推广

网站 宗旨,东莞软文推广,wordpress管理页面密码忘记,设计兼职网站大一下学期写的C语言程序设计实验报告——学生成绩管理系统课程设计与实现 此篇为“设计篇”o~ 目录 前言 一、设计任务 二、程序设计与实现 1.程序设计 2.数据描述 3.功能模块设计 总结 前言 此篇为大一下学期写的C语言程序设计实验报告——学生成绩管理系统课程设计与…

大一下学期写的C语言程序设计实验报告——学生成绩管理系统课程设计与实现

此篇为“设计篇”o~

目录

前言

一、设计任务

二、程序设计与实现

1.程序设计

2.数据描述

3.功能模块设计

总结


前言

此篇为大一下学期写的C语言程序设计实验报告——学生成绩管理系统课程设计与实现

这篇为设计篇~ 代码部分可以查看下一篇文章哦>.< 

编译工具我用的是codeblocks,其他一般C语言编译器如vc++等也是可以运行的哦     

具体内容如下啦

一、设计任务

随着信息时代的到来,办公趋向无纸化、高效化,对于学生成绩的管理更是如此,基于此,我选择了学生成绩管理系统作为我的课题,希望能够模仿教务系统中成绩的录入与查询功能,编写自己的成绩管理系统。从教师与学生两个角度分别实现成绩的录入、删除、修改、排序、浏览与查询功能。

二、程序设计与实现

1.程序设计

本程序面向两类用户即教师与学生,登录需密码,登录成功后有两个入口,分别为教师端和学生端。教师端共有添加、删除、修改、查找、浏览、排序六个功能,学生权限为查看本人详细成绩、查看班级成绩由高到低排序两个功能。学生成绩管理系统功能结构图如图1.所示。

图1 学生成绩管理系统功能结构图

2.数据描述

(1)学生信息存储

代码中定义结构体类型struct student来存储学生的信息。结构体类型定义及结构体成员含义说明如下所示。

struct student

{

    char name[20];

    char num[20];

    int math;

    int Cgrade;

    int English;

    int total;

};

(2)全局变量设计

定义全局变量tea[50]记录密码用户数量,用于用户输入。

Struct teacher tea[50];

(3)账号密码设计

代码中定义结构体变量struct teacher来储存账号和密码。

struct teacher

{

    char ac[30];//账号

    char pw[30];//密码

};

3.功能模块设计

(1)函数名:void Hello()

        函数功能:显示登录界面

        输入:用户输入选项

        输出:各项功能

        算法描述:采用switch函数

        当 case 1:显示登录功能   login();

             case 2:显示注册功能   registeruser();

             case 0:退出登录

(2)函数名:void login ()  

        函数功能:显示登录功能

        输    入:账号  密码

        输    出:无

        算法描述:

(3)函数名:void registeruser()

        函数功能:注册账号功能

        输    入:用户账号  密码(六位)

        输    出:无

        算法描述:输入账号:

                          输入密码:采用for循环,使得输入密码时用*显示。

                          再次输入密码:(1)若密码正确,则注册成功

                                                   (2)若密码错误,则注册失败,重新注册

(4)函数名:void Menu() 和 void Key()

        函数功能:系统菜单,选择教师端或学生端

        输入:用户输入选项

        输出:教师菜单 或 学生菜单

        算法描述:采用switch函数

                case 1:教师端 菜单及功能   systemMenu(); keyDown();

                case 2:学生端 菜单及功能   stuMenu();  stuKeyDown();

                case 3:退出登录  回到Hello()函数 : 登录界面

                case 0:退出系统。

(5)函数名:void systemMenu()  和  void keyDown()

      函数功能:分别为显示教师菜单 和 实现教师功能

      输入:用户输入选项

      输出:各项功能

      算法描述:采用switch函数

      当case 1:录入学生信息

                        插入链表   insertNodeByHead(list,tempData);

                        保存到文件  saveInfoToFile("student.txt",list);

        case 2:浏览学生信息

                         打印链表    printList(list);

        case 3:删除学生信息

                         删除函数  deleteNodeByAppoinNum(list,tempData.num);

                         保存到文件saveInfoToFile("student.txt",list);

        case 4:修改学生信息

                         输入新的信息,保存到文件saveInfoToFile("student.txt",list);

        case 5:根据学号查找学生信息

                         searchNodeByAppoinNum(list,tempData.num);

        case 6:根据总成绩从高到低排序

                         排序函数     sortStudentListByTotal(list);

                         打印   printList(list);

        case 7:返回到主菜单  主功能   Menu();   Key();

        case 0:退出系统。

(6) 函数名:void stuMenu()  和  void stuKeyDown()

             函数功能:分别显示学生菜单 和 学生功能

             输       入:用户输入选项

             输       出:各项功能

             算法描述:采用switch函数

             case 1:根据学号查找学生个人信息

                         searchNodeByAppoinNum(list,tempData.num);

             case 2:查找班级总成绩及从高到低的排名

                         排序函数     sortStudentListByTotal(list);

                         打印   printList(list);

             case 3:返回到主菜单  主功能   Menu();   Key();

             case 0:退出系统。

(7)函数名:void deleteNodeByAppoinNum(struct Node* listHeadNode,char* num)

      函数功能:通过学号删除学生信息

      输入:学生学号

      输出:若学号匹配,则删除成功

      算法描述:

(8)函数名:struct Node *sortStudentListByTotal(struct Node *listHeadNode)

      函数功能:根据总成绩从高到低排序

      输入:无

      输出:无

      算法描述:采用选择排序法

(9)函数名:struct Node* searchNodeByAppoinNum(struct Node* listHeadNode,char* num)

        函数功能:根据学号查找学生信息

        输入:学生学号

        输出:无

        算法描述:


三、总结

通过此次实验项目,学到了(1)链表的使用;

                                           (2)以及指针的高级用法 如结构体指针等。

自己在做项目时,存在哪些问题?后续如何改正?

(1)登录注册等出现问题、以及链表运用不熟练,以至于有些程序不能如愿做出;

(2)后续会更加努力学习链表,尽量做到熟练运用,以及对文件的熟练操作等。

http://www.bjxfkj.com.cn/article/100764.html

相关文章:

  • 深圳品牌设计公司哪家好seox
  • 中国新闻周刊优化大师是什么意思
  • 品牌网站建设怎么做原画培训机构哪里好
  • 十大网站app排行榜做网站怎么做
  • 备案需要网站建设方案书长沙seo优化排名
  • 如何建立自己的网站步骤搜索推广渠道有哪些
  • 宜昌网站建设多少钱营销策略主要包括哪些
  • 创网站多少钱常用的网络推广方法有
  • 上海做网站哪个好上海排名seo公司
  • 远程教育网站建设方案长岭网站优化公司
  • 网站开发榜单规则windows系统优化软件
  • wordpress 安全性设置武汉seo推广
  • 网站建设指导日结app推广联盟
  • 手机网站 cms百度官网入口链接
  • 37游戏平台seo模拟点击算法
  • 西湖网站建设电子商务网站建设流程
  • 查网站开通时间网站seo 优化
  • 企业网站更新频率软文免费发布平台
  • 猪价格网免费手机优化大师下载安装
  • 青岛网站开发学校引擎搜索
  • 主页免费下载seo是什么车
  • 网站html有趣代码seo和点击付费的区别
  • 写作挣钱的网站快速优化排名公司推荐
  • 贵阳企业网站建设百度官网地址
  • 毕业设计网页制作咖啡网站图片推广接单平台哪个好
  • 网站开发 性能方面服装品牌营销策划方案
  • 如何测试网站的跨浏览器兼容性厦门百度代理公司
  • 网站建设高端百度惠生活商家入驻
  • 网站空间去哪里买的网络销售怎么做才能做好
  • 西安网站建设服务商十强sem账户托管