《C语言程序设计实习报告 行编辑器 学生管理系统》由会员分享,可在线阅读,更多相关《C语言程序设计实习报告 行编辑器 学生管理系统(47页珍藏版)》请在人人文库网上搜索。

1、C程序设计实习报告题目:简单的行编辑器(修改版) 学 院: 专 业: 姓 名:班级学号:指导教师:2009年 7 月 3 日前言由于我们班选题是题号和学号一一对应,所以我抽到了16题,简单的行编辑器。刚开始时不知道什么叫行编辑器,以为这个题目有多么的神秘,第二次实习时老师说选这个题目最好换个题,与老师交流,老师建议在原有的题目上加些功能。只是还是不知道什么叫行编辑器,上网,问同学,没有一点思路。再一次问老师,老师说不用管它什么是行编辑器,编辑的目的是为了后面对文件进行处理,于是这一次总算有了新的思路。等到这个题快要做完时,也明白了为什么老师说它太简单了,做完后自己感觉都有串改题目之嫌疑,原题的。

2、要求实在太简单了,自己加的功能占了程序的大部分。8天下来感觉自己对C语言以及程序编辑的认识加深了许多。以前觉得很难的结构体,数组,文件全部用到了,虽然并不能完全掌握,那也有一些成就感。在这里要感谢老师以及我的同学,在整个编程中给了我很大的帮助。目录前言II目录III1题目要求- 1 -2需求分析- 1 -3概要设计- 1 -3.1设计思想- 1 -3.2软件运行与开发平台- 2 -3.3数据结构- 2 -3.4系统结构图- 2 -4详细设计- 3 -4.1主函数- 3 -4.2各功能模块设计- 4 -(1)输入模块- 4 -(2)浏览模块- 5 -(3)添加模块- 6 -(4)查找模块- 8 。

3、-(5)修改模块- 13 -(6)排序模块- 16 -(7)保存模块- 19 -4.3公共函数- 19 -(1)加载函数- 19 -(2) 学号输入函数- 20 -(3)输入三个科目分数函数- 20 -(4)求平均值函数- 21 -(5)输入整个记录函数- 21 -(6)修改整条记录函数- 21 -(7)显示数据结构项目- 22 -(8)显示一个记录的函数- 22 -5测试、结果进行分析- 23 -5.1进入页面- 23 -5.2数据录入- 24 -5.3数据录入成功,直接返回菜单- 24 -5.4不进行数据录入,直接进入菜单。- 25 -5.5浏览数据- 25 -5.6添加数据- 26 -5。

4、.7浏览添加后的数据- 26 -5.8查找按姓名查找- 27 -5.9查找按学号查找- 27 -5.10修改对分数2进行修改- 28 -5.11排序按平均分进行排序- 28 -6总结- 30 -7参考文献- 30 -8附录- 31 -主要程序模块清单- 31 -1题目要求原题:简单的行编辑器【要求】(1) 设置一个简单的行编辑器,每行以回车结束。(2) 数据以文件形式储存。(3) 编辑器具有查找、替换、修改数据的功能。修改后:修改思路是将由行编辑器生成的文件换成有关结构体的内容,建立一个结构体输入关信息,生成文件,再实现查找、替换、修改数据等的功能。这里具体是参考书上学生成绩管理系统,实现成绩。

5、的录入,显示,查找,添加,保存等功能模块。2需求分析根据题目要求,由于学生信息是存放在文件中,所以应提供文件的输入、输出等操作;在程序中需要浏览学生的信息,应提供显示、查找、排序等操作;另外还应提供键盘式选择菜单实现功能选择。3概要设计3.1设计思想由于原题的特点,对题目进行了一定的拓展。本着提高自己编程能力,加深对C语言重点、难点内容的理解,添加了关于结构体、数组以及文件的运用。将程序模块化,使程序条理清楚,制作简单,容易读懂,并能体会到程序开发的思想与方法,加深对C语言编程的认识。3.2软件运行与开发平台C语言,Windows平台,VC6.0,3.3数据结构此处选用了结构体的形式来存放每一。

6、个学生的信息,对与若干个学生采用了结构体数组。3.4系统结构图学生成绩管理系统数据输入数据显示数据添加数据查找数据修改排序数据保存按姓名查找按学号查找按分数1排序按分数2排序按分数3排序按平均分排序4详细设计4.1主函数主函数比较简单,只提供了输入和菜单函数的调用。各个功能的模块用菜单方式选择。图4.11NY开始显示一系列功能选项输入n,判断m是否是12根据n的值调用各功能模块函数结束【程序】void main()int q,w1;printf(tt*行编辑器(修改拓展版)*nn);printf(tttttt周磊tnn);doprintf(tt重新录入数据请按1tt进入菜单请按2: bb);s。

7、canf(%d,&q);if(q!=1&q!=2) /*对选择数字作出判断*/w1=1;getchar();else w1=0;while(w1=1);if(q=1) /*if语句选择要进行的操作*/enter();elsemenu();4.2各功能模块设计(1)输入模块考虑到自己在C学习时遇到的问题,以及在考计算机二级时薄弱的地方,以及联系这个题目的要求,此处选用了结构体的形式来存放每一个学生的信息,对与若干个学生采用了结构体数组。具体到各个数据的信息,学号和姓名采用了字符型数组,分数为整型,而平均分采用了实型。/*定义结构体变量*/struct studentchar num20;/*学号。

8、*/char name100;/*姓名*/int score3;/*分数*/float ave;/*平均分*/stuN; /*stuN中每个元素对应一个学生*/N采用了宏定义的方式,可以随时在源程序中修改。【程序】/*输入模块*/void enter()YN图4.21开始输入用户要输入学生记录的个数n从0n-1调用输入函数input(i)i!=0吗?调用保存函数save()返回主菜单结束int i,n;printf(请输入学生数量(0-%d)?:,N-1);scanf(%d,&n);printf(n请输入数据nn);for(i=0;i9) /*判断学号是否为数字*/puts(输入错误!仅可输入。

9、(0-9),请重新输入!n);w1=1;break;if(w1!=1)for(k=0;k8|c=1);doswitch(c) /*选择要修改的项目*/case 1:no_input(i,n);break;case 2:printf(姓名:);scanf(%s,stui.name);break;case 3:printf(分数1:);scanf(%d,&stui.score0);break;case 4:printf(分数2:);scanf(%d,&stui.score1);break;case 5:printf(分数3:);scanf(%d,&stui.score2);break;case 6。

10、:score_input(i);break;case 7:input(i);break;if(c2&c#include#include#include#define N 50void save();void enter();void input(int i);void no_input(int i,int n);void score_input(int i);void average(int i);void menu();void browse();int modify_data(int i,int n);void printf_face();void search();void add();。

11、void modify();int load();void order();void printf_one(int i);void search_name();void search_no();void order_ave();void order_score1();void order_score2();void order_score3();void main()int q,w1;printf(tt*行编辑器(修改拓展版)*nn);printf(tttttt周磊tnn);doprintf(tt重新录入数据请按1tt进入菜单请按2: bb);scanf(%d,&q);if(q!=1&q!=2。

12、) /*对选择数字作出判断*/w1=1;getchar();else w1=0;while(w1=1);if(q=1) /*if语句选择要进行的操作*/enter();elsemenu();/*定义结构体变量*/struct studentchar num20;/*学号*/char name100;/*姓名*/int score3;/*分数*/float ave;/*平均分*/stuN; /*stuN中每个元素对应一个学生*/*输入模块*/void enter()int i,n;printf(请输入学生数量(0-%d)?:,N-1);scanf(%d,&n);printf(n请输入数据nn);。

13、for(i=0;i9) /*判断学号是否为数字*/puts(输入错误!仅可输入(0-9),请重新输入!n);w1=1;break;if(w1!=1)for(k=0;k6) /*对选择的数字作出判断*/printf(输入错误,请重新输入);w=1;getchar();else w=0;while(w=1);switch(n) case 0:browse();break; /*浏览*/case 1:add();break; /*添加*/case 2:search();break; /*查找*/case 3:modify();break; /*修改*/ case 4:order();break; /。

14、*排序*/case 5:save(); break; /*保存*/case 6:exit(0);break; /*推出*/ /*添加模块*/void add()int i,n,m,k;FILE *fp;n=load();printf(请输入添加的学生个数(0-%d)?:,N-1-n);scanf(%d,&m); /*m为添加学生的个数*/k=m+n-1;for(i=n;i=k;i+)printf(n 输入第%d个学生记录n,i-n+1);input(i); /*调用输入函数*/if(fp=fopen(zhoulei.txt,ab)=NULL)printf(n文件无法打开n);for(i=n;i=k;i+)if(fwrite(&stui,sizeof(struct student),1,fp)=0)printf(文件写入错误n);fclose(fp);save();/*加载函数*/int load()FILE *fp;int i;if(fp=fopen(zhoulei.txt,rb)=NULL) /*以只读方式打开一个二进制文件*/printf(n无法打开文件n);return NULL;for(i=0;!feof(fp);i+)fread(&stui,sizeof(struct stud。

学号程序编辑 c语言,C语言程序设计实习报告 行编辑器 学生管理系统相关推荐

  1. c语言程序实习报告,c语言程序设计实习报告程序

    <c语言程序设计实习报告程序>由会员分享,可在线阅读,更多相关<c语言程序设计实习报告程序(12页珍藏版)>请在人人文库网上搜索. 1.include stdio.h/* 定义 ...

  2. 组数游戏c语言程序报告,c语言组数游戏程序设计实习报告.docx

    c语言组数游戏程序设计实习报告 C程序设计实习报告题目:组数游戏学院:机电学院专业:机械设计制造及自动化姓名:张庆远班级学号:20091002559指导教师:薛思清目录第一章:题目要求1.1:要求1. ...

  3. 南京邮电大学c语言程序报告,程序设计报告南京邮电大学学生管理系统 c语言.doc...

    程序设计报告南京邮电大学学生管理系统 c语言 程序设计报告 题 目: 学生信息管理系统 专 业 电子信息科学与技术 学 生 姓 名 孟祥熙 班 级 学 号 指 导 教 师 王蔚 指 导 单 位 南京邮 ...

  4. c语言在测绘工程中的作用,测绘C程序设计实习报告

    <测绘C程序设计实习报告>由会员分享,可在线阅读,更多相关<测绘C程序设计实习报告(28页珍藏版)>请在人人文库网上搜索. 1.测绘工程(c版)实习报告学位:名字:班级:专业: ...

  5. 大学生c语言程序设计具体干什么,大学生c语言程序设计实习报告.doc

    大学生c语言程序设计实习报告 实习是我们的必经之路,很多时候我们都不知道自己为什么要去实习,但就是遵从我们心里的想法-去实习.实习给予我们的不仅仅是专业上的技巧,还有社会的经验,也许这个对我们才是最重 ...

  6. c语言循环结构程序设计实验报告,c语言循环结构程序设计实验报告

    c语言循环结构程序设计实验报告 云南大学数学与统计学实验教学中心实验报告课程名称:程序设计和算法语言 学期: 2012~2013 学年下学期 成绩:指导教师: 学生姓名: 学生学号实验名称:循环结构程 ...

  7. C语言实验报告4云南大学,C语言循环结构程序设计实验报告.doc

    C语言循环结构程序设计实验报告.doc 云南大学数学与统计学实验教学中心实验报告课程名称程序设计和算法语言学期 20122013学年下学期成绩指导教师学生姓名学生学号实验名称循环结构程序设计实验编号四 ...

  8. c语言实现页面调度算法实验报告,c语言实现调度算法程序设计实验报告-先来先服务fcfs.docx...

    c语言实现调度算法程序设计实验报告-先来先服务fcfs 实验报告 <操作系统>课程综合性实验报告 课程设计报告 课程设计题目:先来先服务(FCFS)调度算法模拟 专业:计算机科学与技术班级 ...

  9. 南京邮电大学c语言程序设计平台,程序设计报告-南京邮电大学-学生管理系统-c语言.doc...

    程序设计报告-南京邮电大学-学生管理系统-c语言.doc 程序设计报告 题 目: 学生信息管理系统 专 业 电子信息科学与技术 学 生 姓 名 孟祥熙 班 级 学 号 指 导 教 师 王蔚 指 导 单 ...

最新文章

  1. 如何最大限度提高.NET的性能
  2. 网易云易盾荣获雷锋网颁发的年度最佳视频内容审查奖
  3. java实现八种排序算法并测试速度(详细)
  4. Flex值得一看参考资源
  5. java 测试工具 oracle_几种测试工具的简单介绍
  6. signature=8405d26e250ad07c44560263cb1d4fc0,Systems for analyzing microtissue arrays
  7. WINDOWS 下安装boost
  8. 传智php入学测试题,传智播客PHP 0912 基础班 入学测试题
  9. modelmap前端怎么取值_【百度】前端开发岗面试题
  10. EBS Sql Loader的简单使用
  11. 逻辑门图解(NOT门 AND门 OR门 XOR门)
  12. 计算机键盘重复设置,教你操作win10系统电脑键盘打字时总是出现重复字符的方案...
  13. 软件测试--因果图分析方法
  14. JSF 的el表达式语言
  15. 土豆网、六间房等在线视频FLV文件下载方法
  16. 【Jquery】Jquery操作table表格详细说明
  17. ready和onload的区别
  18. 英文版win10如何全屏玩英文版warcraft3
  19. 创新易死需要勇气 需要抵御“抄袭”心魔
  20. DevOps落地实践:BAT系列:CICD:iPipe vs CCI

热门文章

  1. JSON Server在快速开发过程中的使用
  2. Intel IPP安装和安装测试
  3. Secure DevOps!探真科技2022云原生安全产品发布会圆满落幕
  4. iPhone13 系列售价曝光:没有涨价;曝华为P50系列7月29日发布;丁磊称专业比学校更重要:你同意吗?|极客头条...
  5. FPGA 无解漏洞 “StarBleed”轰动一时,今天来扒一下技术细节!
  6. 挑战王者荣耀“绝悟” AI,会进化的职业选手太恐怖了!
  7. 进 BAT 很简单?工作 2、3 年这样拿下大厂 Offer!
  8. 如何像高级开发人员一样思考?
  9. 编程小白模拟简易比特币系统,手把手带你写一波!(附代码)
  10. 做了5年程序员才明白,这项能力原来这么重要