dedecms织梦内容管理系统    
首页 | java | C/C++ | PHP | 操作系统 | ajax | 脚本编程 | 安全技术 | 本站下载页 | flex | CRM | 专题 | QQ群 | 测试中心 | 会员中心 | 积分规则
  当前位置:主页>C/C++>文章内容
学生信息管理C语言DOS环境运行
来源:本站原创     作者:    

原帖及评论:

替同学写了作业,如下,我同学说看不懂啊 。。。

就添加了很详细的注释,大家有兴趣的就看看吧 。。。
====================================================
        
        代码在第二个,三个帖子中贴出来了,太长了,一个帖子不够用

====================================================
题目分析 及 算法设计 :

        题目中的各个功能都是相对独立的,所以我将各项功能以 带 编号 的菜单形式组织在屏幕上,
        用户通过 输入 编号 执行相应的功能。显示菜单的代码处于一个循环之中,当执行完一个
        子功能后,就又回到循环,显示主菜单,直到用户选择 退出 菜单。

        这种操作方式比其它机制(如:主程序 + 程序参数)更简捷,不必每次用不同的参数重新运行程序,
        以实现相应的功能。
        
        1. 查看文件记录内容 的实现:
            用 循环 读取文件内容,然后显示在屏幕上。
            因为 我们的数据是以结构体的形式存放在文件中的,所以 代码中用了块读取和块写入。
            在 循环中设置计数器来统计记录的个数。

        2. 添加记录 的实现:
            让用户根据屏幕提示输入数据,完成对学生信息结构体各项的赋值,待取得足够数据后,
            将数据文件以“追加”方式打开,执行块写入,将整个结构体写入文件。

        3. 删除记录 的实现:
            学号(ID)一般不会重复,所以我在程序中让用户输入想要删除的记录的学号(ID),
            然后在文件中查找,如果不是用户想要删除的记录(即ID不同),就保存在一个临时的文件中,
            这样,就将想要删除的记录与其它记录分离开了,最后,删除原来的数据文件,将临时文件的
            名字改为 原来数据文件的名字。

        4. 统计功能 的实现:
            统计功能模块分为三个小模块:平均分的分数段统计,总分的最高和最低分统计,
            各科的最高和最低分统计。但我并不想分别来写,因为它们都要对所有记录进行扫描,
            而它们又互不干扰,所以我把它们组织在一个循环中,各自都有自己的计算代码和变量,
            所以这个 中的局部变量 很多。

        5. 查找功能 的实现:
            题目要求两种查找方式:按 学号(ID) , 按 姓名(Name)。
            两者是独立的,所以我用了一个参数 isFind_From_ID 来表明是哪种查找方式,进而在在程序
            内部由一个 switch() 选择分支转向不同的代码段去执行。
            具体的查找就是比较相应的项目是否与用户输入的一样,若一样就输出到屏幕。

有关各个变量的作用都已经在代码中表明,非常详细。
===================================================================================
运行效果如下(在dos环境中运行):

############    Main   Menu    ###############
##############################################

        1 .     View the Records in the data file
        2 .     Add New Record
        3 .     Delete an old Record
        4 .     Make a Statistics
        5 .     Find a Record from the ID
        6 .     Find a Record from the Name
        7 .     Quit

##############################################

Input the index of your choice : 1

#########       Start a command         #########

  Name : wewewew                Sex : Female
  ID : 232323           Class : sasas
Math = -858993460       English = -858993460    Compute = -858993460
Philosophy = -858993460         PE = -858993460

------------------------------------------
  Name : ww             Sex : Female
  ID : 2121             Class : 12
Math = 123      English = 123   Compute = 123
Philosophy = 123                PE = 123

------------------------------------------
The current data file have     2       record .

#########        End  a command         #########

Press any key to Return Main Menu ....

[1]   

 

 

上一篇:C语言制作坦克游戏方法总结适合新手   下一篇:C语言图形模式编程,个性鼠标
[收藏] [推荐] [评论(0条)] [返回顶部] [打印本页] [关闭窗口]  
用户名: 新注册) 密码: 匿名评论
评论内容:(不能超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规。
 §最新评论
  热点文章
·C语言学习
·C语言指针
·C语言数组排序小结
·c语言 最简单的推箱子游戏
·c语言 全国计算机编程大赛复赛试
·c语言 全国计算机编程大赛复赛试
·c++ 数组与指针
·C++中的内存管理(new、delete、
·如何用C语言开发DSP嵌入式系统
·如何用C语言开发DSP嵌入式系统
·Linux下C语言编程
·学习arm的话先看哪本书?
  相关文章
·C语言制作坦克游戏方法总结适合
·C语言图形模式编程,个性鼠标
·链表的C语言实现之循环链表及双
·C语言图形处理
·利用钩子函数来捕捉键盘响应的wi
·用C语言实现Ping程序功能
·C语言猜数字游戏重写版
·C语言图形函数
·编程初学者易犯的毛病
·浅谈C中的malloc和free
·C语言开发平台的搭建
·关于main()函数
  相关信息
copy right @ 百家拳软件项目研究室 2007 辽ICP备07011763