C语言实验指导手册(小系统开发)
更新时间:2023-03-08 16:46:35 阅读量: 综合文库 文档下载
- c语言程序设计实验指导推荐度:
- 相关推荐
一、实验名称:
实验B:小系统开发 二、实验目的:
1、掌握一个完整系统开发的基本过程 2、掌握完整系统开发过程中应注意的问题 三、实验器材:
1、计算机 四、实验内容:
我们这儿设计系统的主要目的是为了了解一个完整系统开发的一般过程及各类资源的组织方式,所以我们选择以一个“班级基本信息管理系统”为例,班级内部基本信息情况大家比较熟悉。
按照软件工程原理,将软件的生命周期大体划分为8个阶段,如下: 1、问题的定义:
须确定“要解决的问题是什么?”
通过对客户的访问调查,系统分析员扼要写出关于问题性质、工程目标和工程规模的书面报告,经过讨论和必要的修改之后这份报告应该得到客户的确认。
开发一个针对本班的“班级基本信息管理系统”以实现对本班成员基本信息的自动化管理。 2、可行性研究:
用来确定上一阶段中的问题是否有行得通的解决办法。
班级基本信息大家比较熟悉,又有一定的C语言基础,有充足的上机实践时间,完全有能力开发这样的一个小系统。
另外,在性能、功能要求不高的情况下,此系统的开发也不需要太大的成本。 3、需求分析:
主要需要确定目标系统必须具备哪些功能。
系统分析员在此阶段须和用户密切配合,充分交流信息,以得出用户确认的系统逻辑模型。通常用数据流图、数据字典和简要的算法表示系统的逻辑模型。
这个阶段需要准确完整地体现用户要求,用正式文档准确记录对目标系统的需求,这份文档通常叫做规格说明书(Specification)。
大体如下:
基本信息包括如下内容:学号(14位)、姓名(最多三个汉字)、性别(一个汉字)、年龄(3位),其它信息可根据情况自定 班级总人数
功能要求:录入功能、按学号查找(速度不能太慢)、按学号修改人员信息、按学号删除人员、将全部人员信息按学号顺序列表输出、启动时的用户合法性检测功能、永久性存盘功能等。 性能要求:查找速度不能太慢(5秒以内) 4、系统设计(概要设计):
设计出实现目标系统的几种可能的方案,从中选择一种最佳的。设计系统的总体结构,也即确定程序由哪些模块组成及模快间的关系。
首先,每个人员的基本信息可以用结构体来表示,而所有成员的信息在内存中可以用一个一维数组来存放,用一个变量CurrentCount来表示目前数组中具有有效信息的人员数,初值为0,如下:
#include
#define N 100 //最大人数
struct stu_info {
char xh[14]; //学号 char xm[7]; //姓名 char xb[3]; //性别 int nl; //年龄 };
struct stu_info stu[N+1];//用于存放所有人相关信息,0号元素备用 int CurrentCount=0; //当前实际人数
按系统的逻辑功能,可以将系统大体划分为如右图所示几大模块: 5、详细设计:
主要指对各个模块具体算法及数据结构的设计。 针对本系统的各个模块的算法描述见后面各图: 2
6、编码:
指选择具体的计算机语言去书写程序。 #include
#define N 100 //最大人数
struct stu_info {
char xh[14]; //学号 char xm[7]; //姓名 char xb[3]; //性别 int nl; //年龄 };
struct stu_info stu[N+1];//用于存放所有人相关信息,0号元素备用 int CurrentCount=0; //当前实际人数
void input() //录入模块 {
char sfjx=1;
3
while(sfjx!=0) {
if(CurrentCount==N) {
printf(\人数已达上限,不能添加!!!\\n\ sfjx=0; } else {
CurrentCount++;
printf(\请输入一个人员的相关信息(学号 姓名 性别 年龄):\
scanf(\rrentCount].nl);
printf(\是否继续(0--结束,其它--继续):\ scanf(\ } }
system(\}
void save() //保存模块 {
FILE *fp;
fp=fopen(\ if(fp==NULL)
printf(\文件打开不成功,信息无法保存!!!\\n\ else {
fprintf(fp,\ for(int i=1;i<=CurrentCount;i++)
fprintf(fp,\ fclose(fp);
printf(\信息已成功保存!!!\\n\ }
system(\}
void read() //读盘模块 {
FILE *fp;
fp=fopen(\ if(fp==NULL)
printf(\文件打开不成功,信息无法读取!!!\\n\ else {
fscanf(fp,\ for(int i=1;i<=CurrentCount;i++)
4
{
fscanf(fp,\ printf(\学号:%s 姓名:%s 性别:%s 年
龄:%d\\n\ }
fclose(fp);
printf(\信息已成功读取!!!\\n\ }
system(\}
void search() //查询模块 {
char dcxh[14]; int sfjx=1,i; while(sfjx!=0) {
printf(\请输入一个待查学员的学号:\ scanf(\
strcpy(stu[0].xh,dcxh); i=CurrentCount;
while(strcmp(stu[i].xh,dcxh)!=0) i--; if(i==0)
printf(\查无此人!!!\\n\ else {
printf(\此人详细信息如下:\\n\ printf(\学号:%s 姓名龄:%d\\n\ }
printf(\是否继续(0--结束,其它--继续):\ scanf(\ }
system(\}
void del() //删除模块 {
char dcxh[14]; int sfjx=1,i,j; while(sfjx!=0) {
printf(\请输入一个待删学员的学号:\ scanf(\
strcpy(stu[0].xh,dcxh); i=CurrentCount;
while(strcmp(stu[i].xh,dcxh)!=0)
5
%s 性别:%s 年
:
正在阅读:
C语言实验指导手册(小系统开发)03-08
公司承建G318线林芝至拉萨段公路改造工程宣传教育提纲11-19
广东省第十三届运动会04-03
过程控制实验指导书 - 图文01-13
三下第三单元03-08
净化系统电气及仪表安装工程施工方案08-24
日本爱情名言08-19
物流系统规划复习思考题02-01
小度写范文一年级日记读书心得8篇模板05-04
童装市场调查报告08-13
- 《江苏省环境水质(地表水)自动监测预警系统运行管理办法(试行)》
- 安乐死合法化辩论赛立论稿(浙大新生赛)
- 公共科目模拟试卷公务员考试资料
- 我国固定资产投资FAI对GDP的影响
- 大学生创新创业训练计划项目申请书大创项目申报表
- 完美版—单片机控制步进电机
- 2013资阳中考化学试题
- 18.两位数减一位数退位(397道)
- 工程量计算规则
- 二年级操行评语(下)
- 第3章 流程控制语句
- 浅基桥墩加固技术
- 课题研究的主要方法
- 5100软件说明书 - 图文
- 车间技术员年终总结
- 关于印发《中铁建工集团开展项目管理实验室活动方案》的通知
- 经典诵读结题报告
- 地下水动力学习题答案
- 2018年全国各地高考数学模拟试题平面解析几何试题汇编(含答案解
- 街道办事处主任2018年度述职述廉报告
- 语言
- 指导
- 实验
- 手册
- 开发
- 系统
- 2019年高考化学一轮复习第5章物质结构元素周期律高考专题讲座三
- 年度所得税申报表填写说明
- 关于举办2014年永嘉县学生读书节的通知
- 全国政协操作手册
- 小学班级管理工作中的严与爱(论文) 何东
- 江苏省排污口设置及规范化整治管理办法
- 为了财富
- 18 CCNP讲解笔记-PIM 2
- 教科版小学艺术二年级下册全册教案音乐
- 苏宁物流发展现状调研2016
- 反比例函数的应用练习及答案同步训练
- 课堂教学习题1
- 008 凝汽器焊接施工技术措施 HEPCC1-HJ-008
- 《平行四边形》教学设计
- 各信用社员工绩效考核指导意见
- 深圳地铁规划说明
- 教育教师学习整训会工作报告
- 2018超星尔雅《逻辑学导论》课后练习答案期末考试题答案二
- 中国华电集团公司水电工程建设管理办法
- 邓小平的道德人格内涵浅析