当前位置:文档之家› 程序设计实训

程序设计实训

程序设计实训
程序设计实训

实训一图书管理系统

实训目的:

1.掌握结构化程序设计的基本思想;

2.熟练掌握结构以及指针的设计和应用;

3.熟练掌握文件的存取方法;

4.了解综合系统设计的基本原理;

5.提高C语言程序设计的综合应用能力。

实训任务:

开发一个简单的图书管理系统,具体功能要求如下:

1.图书管理:增加图书、修改图书、删除图书、统计图书;

2.借阅管理:查找图书、借阅图书、归还图书、借阅图书统计;

3.读者管理:申请读者卡、删除读者卡、修改读者卡;

4.馆员管理:添加管理员、修改管理员信息、删除管理员。

根据以上功能说明,设计馆员信息、读者信息、读者卡信息、图书信息的存储结构,数据存储在文件中,界面要求有合理的提示,每个功能可以设立菜单,根据提示可以完成相关的功能要求。

实训设计:

1.基本数据结构设计:

2.系统结构设计:

系统结构设计说明了整个系统的功能模块结构以及调用关系,本设计采用自顶向下的结构化方法,将每个模块自顶向下展开。

3. 模块设计:

(1)主控模块

在该模块中,提供系统的主菜单,通过主菜单用户选择图书管理、借阅管理、读者管理、馆员管理和退出系统。

(2)其它

实训二链表的基本操作

一程序设计目的

1.掌握结构化程序设计的基本思想;

2.熟练掌握结构以及指针的设计和应用;

3.了解综合系统设计的基本原理;

4.掌握C语言程序的综合应用。

二程序设计任务内容

假设学生信息含有:学号、姓名、成绩。用户可以对学生记录进行建立、插入、删除、更新、查找和输出等管理操作。

要求用单链表表示一个班的学生信息,基本操作如下,用菜单形式实现这些功能(菜单要能重复使用):

1、建立单链表输入N个学生的学号、姓名、成绩,并建立成一个单链表。当输入学号

为0时,结束。

2、查找单链表输入学号,查找该学号的学生的基本信息,若存在,输出该学号的基本

信息(学号、姓名、成绩),不存在,输出查无此人的信息。

3、插入单链表输入要插入学生的基本信息(学号、姓名、成绩),将其插入到单链表的

末尾。

4、删除单链表输入要删除学生的学号,若链表中存在对应记录,将该结点删除,若不

存在该学号,则不作删除操作。

5、更新单链表输入要更新的学生的学号,若链表不为空,并且若存在对应学号,则用

新的成绩代替原来成绩,若不存在该学号,则不作更新操作。

6、逆置单链表将一个单链表按相反的顺序重新排列。

7、输出单链表按单链表的顺序输出各学生的信息。

0、退出系统算法结束

实训三通信录管理

实验要求

1.核心数据结构用到的结构体要采用动态内存分配和链表结构。家庭住址也要求存储在动态分配的内存中,以节约内存。内存的起始地址存储在结构体的成员指针addr中。

2.使用文件进行存储和管理。程序启动时可从文件中读取通信信息,或从键盘输入通信信息;运行过程中如添加或删除记录时也可对文件进行存取;退出前可选择将通信信息保存到文件中。

3.不同的功能使用不同的函数实现(模块化),对每个函数的功能和调用接口要注释清楚。对程序其它部分也进行必要的注释。

4.对系统进行功能模块分析、画出总流程图和各模块流程图。

5.用户界面要求使用方便、简洁明了、美观大方、格式统一。所有功能可以反复使用,最好使用菜单。

6.通过命令行相应选项能直接进入某个相应菜单选项的功能模块。

程序设计任务内容

该程序具有以下基本功能:

◆添加:增加一个或几个人的记录,并可选择继续输入或退出。

◆查询:可按姓名查找某人记录,也可查找某个组别的所有记录。若找到,则显示所有人的记录,否则提示未找到,无论查找成功否,应还可选择继续查找或退出。

◆删除:删除已输入的记录。输入姓名查找要删除的记录,若找到,提示是否确定删除,若选择是,则删除该人信息,若选择否,则取消;若没找到,提示无此人信息。

◆修改:修改某人的记录。输入姓名并查找,若找到,显示该人的所有信息,并可进行修改;否则提示无此人信息

◆排序:可分别按分组、编号或姓名进行排序。

添加功能:

◆登录模块:该模块在进入主界面之前先执行,用于对进入系统的用户进行身份验证,若用户输入正确的用户名及用户密码,则进入主界面,否则输入超过3次错误则退出程序。

◆系统帮助:显示开发者姓名、班级、开发完成日期、版本号和指导老师等信息。

详细设计说明

明确实验内容,进行需求分析后,开始着手设计系统用户数据结构和功能实现模块。

系统用户数据结构:

1、记录联系人通信信息的数据结构,包含编号、分组、姓名、固话、手机号、QQ号码、E-mail、家庭住址等信息

typedef struct k

{

long num; /* 编号 */

char group[16]; /* 分组 */

char name[16]; /* 姓名 */

char hphone[8]; /* 固话home_phone */

char mphone[12]; /* 手机号mobile_phone */

char qq[12]; /* QQ号码 */

char email[20]; /* e-mail地址 */

int len; /* 家庭住址或通信地址长度 */

address * addr; /* 家庭住址或通信地址 */

struct k *pre; /* 前向链表指针 */

struct k *next; /* 后向链表指针 */

}contact;

与常用数据结构的不同之处在于:

◆家庭住址在此结构体中采用的存储方式并非直接使用字符数组,取而代之的是字符型指针。并且同时多了一项附加内容,通信地址长度 int len。该长度可用函数strlen()求出,但是作为一结构体的成员应有其用意。考虑到联系人内容需及时修改和保存,涉及文件操作,其中fread(),fwrite()二进制读写函数参数均包含字符个数要求,len置于指针addr前用意可由此得出。

◆核心数据结构用到的结构体要求采用动态内存分配和链表结构,题中采用的是双向链表。我们知道进行链表删除操作必须知道该元素的前驱,单向链表需重新声明一指针,双向链表可省掉该操作直接通过 current->pre 实现。其便利之处具体体现在联系人的删除操作。

2、登录用户,包含姓名,密码等信息

typedef struct kk //用户结构体定义,以链表存储结构存储 {

char Name[20]; //用户名称

char ps[8]; // 用户密码

struct kk * next;

}user;

系统模块结构图:

系统流程描述

实训四:电子投票平台

软件需求分析:

电子投票平台软件为用户提供一个在Windows系统上运行的电子投票、票数统计的软件平台。该软件的使用者分为两类,一类为管理员,可以对候选人信息进初始化和修改,还可浏览候选人信息介绍。对于候选人所得票数,管理员可以进行排序,以便得出最终投票结果,当投票流程结束后还可以清空候选人所得票数。除了投票业务流程的功能外,管理员还可以对使用该系统的用户进行管理,具体对投票系统使用者的管理操作有创建用户信息文件,使用者必须知晓自己的用户名和密码,并正确登录,以此来保证安全性。还可以对用户信息进行增加、删除、修改和查询操作。另一类为使用——普通投票者,这类用户需要用管理分配的用户名和密码正确登录系统,该类用户能够进行的操作有浏览候选人介绍、查询候选人介绍、投票。其中的投票操作用户只要输入想要投票的候选人编号即可完成投票,保证了系统的简单易用。

投票人主要功能如下:

①投票人的投票方式:输入要选举的候选人的编号,即可完成投票。

②投票人了解候选人的方式:浏览候选人列表,输入序号查询候选人介绍。

管理人员的主要功能如下:

①初始化候选人信息:在系统投入使用前需要先将需要投票选举的候选人信息录入系统中,以便投票和查看。这个功能由管理员完成。管理员的初始化工作就是将候选人的序号、姓名和简介录入系统。

②浏览候选人简介:为随时掌握候选人的信息,以便进行修改,管理员有权浏览候选人简介。浏览的顺序按照候选人序号即可。

③修改候选人简介:当系统更新或候选人信息有所变化时,输入候选人序号,对信息进行修改。

④查询投票情况:管理员有权查询当前各个候选人得票情况,以便得出最终被选中的候选人信息。

⑤清除投票信息:当投票过程结束后,管理员选择清除投票信息既可清除系统中所有候选人的票数,使之归零。

⑥安全管理:管理员可以对投票人信息进行管理,投票人只有用管理员规定的用户名和密码才能进入系统进行投票。管理员还可以更改用户名、密码和权限,并对投票人信息进行

增加、删除、查询、排序和初始化等操作。

实验目的:

1.掌握结构化程序设计的基本思想;

2.熟练掌握结构以及指针的设计和应用;

3.熟练掌握文件的存取方法;

4.了解综合系统设计的基本原理;

5.掌握C语言程序的综合应用。

基本数据结构的设计

1.常量定义

电子投票系统要有众多投票人使用进行投票,管理员对投票人的管理要涉及到对大量数据的操作,本实验定义投票人数组的长度为100,系统可以分配100个用户进行管理或投票。

2.系统用户数据结构

描述系统用户的编号、用户名、密码和权限信息,作为一整条记录存放在文件中。

typedef struct

{

long Number; // 用户序号

char Name[20]; // 用户名称

char ps[8]; // 用户密码

int power; // 用户权限

}user;

3.候选人信息数据结构

描述候选人的编号、姓名、简介和得票数量信息,作为候选人信息记录存在文件中。

typedef struct

{

long Number; // Field of number

char Name[20]; // Field of name

char intro[500]; // field of introduction

int votenum;

}candidate;

系统结构设计:

1.总体设计

在对电子投票平台进行合理的需求分析之后,对整个系统进行总体设计。首先确定开发与设计的总体思想,在此基础上,用图表的方式给出系统总体的设计架构,绘制系统模型结构图,并且通过模块功能树图对每个模块进行总体设计。此外,总体设计还包括对系统的数据结构或数据库设计,以及界面设计等,从而对后续的详细设计起到指导的作用。

电子投票平台是一个简易投票管理系统。开发设计的重点在于每个投票者对候选人投票后系统都要及时更新并统计候选人所得票数,不可出现遗漏情况。解决这个问题的方法是将投票的过程单独写成一个完整的函数,每次投票动作都必须调用该函数,将得票统计的文件中对应的候选人得票信息加1。

对于投票系统的安全问题,系统采用区分权限的方法加以解决。投票者只能进行投票,使候选人票数加1,无法对候选人票数进行其修改。投票人可以根据候选人信息决定投票,因此对候选项人信息有浏览和查询的功能,但不可以修改。对系统关键信息的修改功能由管理员完成。

对权限的判断要用到程序设计思想中的选择结构,对大量数据的处理要用到循环和文件处理等基本技术。系统采用结构化的设计方法进行设计,采用C语言进行开发。

2.系统模块结构图

依据需求分析结果,电子投票平台可分为6个模块:功能选择、身份验证、投票人管理、候选人管理、投票区和得票区结果管理。系统模块结构如图1所示:

图1 系统模块结构图

3.系统流程描述

系统的主体处理流程如图2所示:

图2 系统主体处理流程图

实训五:分栏程序

一.实验要求

分栏程序是对指定的源文件分栏、加行号显示在屏幕上,并保存为新文件。请综合运用C语言的基本知识,开发该程序,要求实现如下基本功能:

(3)输入(源文件名、目标文件名);

(4)程序中设定分栏数、栏宽、每页行数等;

分栏、编号(读出源文件对文件进行分栏、编号排版显示在屏幕上);

保存(将新分栏排版后的文档用目标文件名保存)。

完成上述基本功能后,将程序中分栏数、栏宽、每页行数等常数改为如下两种形式输入:

以菜单形式提示每页栏数、每行、每栏横向字符数、每页行数及每页上下留空行数等数据的输入,以键盘接收的信息作为参数。

从命令行给出参数,比如命令行的形式为:执行程序分栏文件名栏数页宽栏宽行数页上下留空数,其余参数可缺省,若缺省,则以预定的信息为参数。

在编译、连接与运行程序的过程中,应充分利用调试方法与工具,同时不断总结编写和调试较大型程序的经验与体会,按设计的要求写出设计报告。

二.实验目的

1.掌握结构化程序设计的基本思想;

2.掌握宏定义的使用;

3.熟练掌握数组、文件指针的设计和应用;

4.熟练掌握文件的存取方法;

5.掌握C语言程序的综合应用。

三.基本数据结构设计:

1.设定每行字符宽度,每栏字符数,每栏左右分别留的空格数。

2.用一个三维数组来存放每页的字符,其数组大小为栏数*每栏行数*每行字符数。

3.将分栏编号排版后的文档作新的文件方式保存。

程序结构设计:

程序设计采用自顶向下的结构化方法,将每个模块自顶向下展开,根据功能要求设计功

能模块结构如下:

模块设计:

1.分栏主程序模块 在这个模块中定义了基本的数据结构和全局变量,使各个模块之间有机的联系起来。主程序开始阶段需要打开源文件,源文件名、目标文件名通过键盘输入给出,调用processfile()函数对源文件进行处理。

2. 处理源文件模块 读入源文件放入文件缓冲区,判断文件是否结束,文件没有结束,用一个二维数组(一维表示栏,一维表示行)存放行号;如果字符不是换行符且也不是文件结

束符,将字符放入一三维数组(栏、行、序号)中,如果栏行字符数满了,二维数中放一个整数零。

3. 输出、保存分栏文件模块

如果处理的字符满一页,就进行输出,先输出页眉,然后初始化存放分栏数据的一维数组,将两维数组中的整型数行号转为字符放入一维数组,再将字符逐一放入一维数组,输出一维数组,最后输出页脚,同时将字符逐一写入目标文件。

逐页输出,每页先输出页眉空行,然后输出分栏后文档,并写入目标文件中,最后输出页脚空行。

实训六程序设计任务内容

家庭财务管理系统给用户提供了一个在Windows操作系统上运行的管理平台,用户可以对其成员编号、姓名以及收入、支出构成进行增加、删除、修改等管理操作。同时还提供了系统用户管理功能,根据用户的分类,其拥有的权限不同,系统可以判断登录用户功能,根据用户的分类,其拥有的权限也不同,系统可以判断登录用户的用户名和密码,从而判断其是否可以使用该系统。系统亦可获取登录用户的权限信息,从而判断该用户能够使用该系统的哪些特定功能,不同级别的用户不能够越权使用系统功能。用户分为家长和普通用户两类。

家庭财务管理系统软件是为用户进行家庭成员的收支构成及信息管理进行辅助的应用软件、功能描述如下。

1.用户登录:系统获取的用户名和密码判断该用户能否成功登录系统,当用户登录后根据权限判断该用户是家长还是普通用户,可以使用哪些对应的功能。

2.给用户提供功能选择界面: 家长和普通用户对应的功能选择界面是不同的。功能选择界面包括输入功能选项、调用相应程序两大需求。

3.创建收支信息文件:家长根据提示输入家庭成员的序号、姓名、各项财务信息,如收入、支出。可一次性输入多条家庭成员的收支信息记录。系统将家庭成员收支信息记录存储在系统磁盘的文件中,以便进行管理、查找和备份。

4.增加家庭成员收支信息:可在原有收支信息文件的基础上增加新的家庭成员财务信息记录,并继续保存至磁盘,并且将增加后的文件存储状况显示给用户。在增加新家庭成员收支记录的过程中,系统提示用户输入收、支出两个财务构成项,最终合计,要求系统主动计算获得,并同样作为财务构成项存入文件中对应的记录中。

5.删除家庭成员收支信息:提示家长输入要进行删除操作的家庭成员序号,如果在文件中有该家庭成员的收支信息存在,则将该序号所对应的姓名、序号、各种收入构成等在对应文件中加以删除。由系统提示是否继续进行删除操作,让家长可多次进行删除操作。

6.修改家庭成员收支信息:提示家长输入要进行修改操作的家庭成员序号,如果在文件中有该家庭成员的收支信息存在,则提示家长输入该序号对应的家庭成姓名、收入和支出构成等需要修改的选项,并将修改结果存储于文件。该部分需求也需要提示家长选择是否继续进行修改操作。修改操作中的合计部分,也需要系统根据修改后的收入、支出自动计算修改后的合计财务数额,并连同家长输入的其他修改项一起存入磁盘文件中。

7.查询家庭成员财务情况:分为根据姓名查询和根据序号查询两个具体需求,分别提

示用户输入要查询家庭成信息的序号或姓名,如果在磁盘文件中有对应的家庭成员财务信息,则提示用户已找到,并逐项列出对应家庭成员的收支状况。在该功能中,也需提示用户是否需要继续查找,如不再继续查找,则返回主界面。

8.家庭成员收支排行浏览:该项需求要求根据家庭成员的合计项进行排行,以便用户对家庭成员收状况有较为直观的了解。

9.用户管理:家长对普通用户的管理也需要进行用户的创建、增加、删除、修改和浏览。家长创建的用户记录存储在名为yonghu.txt的文件中,每当有用户登录系统时,系统都会根据该文件中的用户名和密码进行核实判断,匹配时用户才能够顺利登录。家长还具有增加新用户的功能,新增用户的登录名及密码、权限等,也被继续存储在yonghu.txt文件中。当某用户不再使用系统时,还可进行删除操作,并且家长具有修改用户权限的功能。

程序详细设计说明

系统结构设计

1.总体设计

本系统的总体思想基于结构化的程序设计。应用高级语言程序设计中的基本控制结构,如循环和选择,着重实现管理系统的增、删、改、查等典型的管理功能。因此,系统的设计方法是结构化设计方法,开发手段是C语言,在Microsoft Visual C++ 6.0环境下开发。

2.系统模块结构图

依据需求分析结果,家庭财务管理系统可以分为4个模块:

用户登录模块、

功能选择模块、

家庭成员财务管理模块、

用户管理模块。

如图1所示。

图1系统模块结构图3. 系统流程描述:

程序设计实训心得体会

程序设计实训心得体会 心得体会这种学习方法对于一个人来说也许是优秀的,但没有被推广普及的必要。因为学习的方法因人而异,方法的奏效是它与这个人相适应的结果,以下《程序设计实训心得体会》由心得体会栏目为您精心提供。 在软件实验室经过2个星期Jsp程序设计实训,从对软件开发没有太多经验的我掌握了更多的软件开发的方 法和技能,收获颇多。 经过这次理论学习,了解到要做好软件开发,要求 掌握的知识并不是只有编写代码方面的,网络、数据库、操作系统等的知识对做好项目开发是很有帮助的。这让 我明确了以后学习的目标,在不断学习软件开发的同时,也应该继续其他相关知识的深入学习。 实训期间经历的许许多多,给我们带来了很多很多 有实无形的东西,知识、友情以及团队开发的热情,快 乐无一不包围着我们。在这我很想感谢几个人,王璐老 师和班上一同参与这次实训的2位同学。王璐老师对我 们备至关心,不论在学习前后,都给予我们关怀不少, 并且王璐老师不愧是从事多年软件开发的专业人士,其 深厚的专业技能知识和丰富的经验令我等钦佩无比。对 于我们未出茅庐的大学生而言,遇到的问题多而复杂,

询问有经验的人,他们或许一句话就能解决问题,而自 己就得找资料或上网摸索可能要一两天,有时甚至绞尽 完脑汁都不得其解。用个词形容,老师的解答如醍醐灌顶,而对我们,则甘之如饴。 实训这段期间真的好累,尽管实验室给我们提供了 一个相当不错的上课学习环境,但是整天木木地待在实 验室面对毫无生气的荧屏,为 code而烦恼,为bug而郁闷,被文档所包围,随程序侵蚀。然而,这就是学习的 生活,既选之也则安之。忙碌的生活让我每天似乎没有 太多的时间去想一些其他的事,耐心的去调试,专注的 去编写更好的算法,沉浸充实和快乐之中。 更重要的是,两个星期的实训使我们明白我们所欠 缺的不仅仅是技术知识,更重要的是有一种处理事情的 方法、面对问题的心态和动手能力。面对完全陌生的新 知识、新技术、新项目以及整个IT行业,我们不能畏惧,要以一种积极的心态去面对,分析并抓住关键所在。因 为我们所即将应对的每一个项目都是既需要实际操作, 又需要详细规划的。作为组长,协调组员、激励其他组 员和积极参与项目开发是我每天必做的工作。我认为每 个人都应该在团队中做好自己应尽的职责,再优秀的个 人也可能完成一个即庞大又复杂的项目工作,我们必需 紧密的联合在一起,以一个团队的角色来面对。

程序设计实验报告

学生实验报告 院系:测绘学院 专业班级:测绘13级3班 学号:2013305517 学生姓名:王泽 指导教师:郭辉老师 2016年05月20日

安徽理工大学实验报告 实验课程名称:数据结构与软件开发上机实验 开课院系及实验室:测绘学院红楼二楼机房 实验1 编程基本知识练习 实验目的: 通过该实验课内容的练习,学生应掌握VB 编程的基本语法、变量的定义、数组(动态数组)的定义、VB 语言中子过程与函数的定义以及文本文件的读写等知识。 实验内容: 1)变量的定义动态数组的定义与应用; 2)矩阵的加、减、乘运算(定义Sub()子过程或Function()来实现); 3)数据文件的建立、数据的读取与写入。 实验步骤: 1.编辑界面 1.1 打开VB 编程工具,进入编程主界面。

1.2 在窗体上新建“读入数据”和“输出数据”两个按钮。 1.3 双击“窗体”进入代码输入界面,进行代码编辑。 2.用VB 编写的源代码 2.1 矩阵基本运算源码详见附录一。 (1)两矩阵相加 (2)两矩阵相减 (3)矩阵转置 (4)两矩阵相乘 (5)矩阵求逆 2.2 文本文件(本实验中data.txt)的读取源代码 (1)建立文本文件并输入数据 在桌面上新建一“data.txt” ( 文本文件路径为C:\Users\ WH\Desktop\练习\data.txt”)。输入以下内容: 6,7,4,0.005 A,35.418 B,45.712 C,25.270

D,24.678 在桌面上新建一“result.txt” ( 文本文件路径为C:\Users\ WH\Desktop\练习\result.txt”)。(2)从文本文件中读数据 Dim linedata as string, m_GaochaN as integer,m_Pnumber as integer,m_knPnumber as integer,M as Double,k1 as integer 'linedata 为存储文本文件一行信息的字符串变量 Dim a() as String,H() as Double 'a()为存储点名,H()存储高程 Open“C:\Users\ WH\Desktop\练习\data.txt”For Input As #1 Line Input #1, linedata k = Split(linedata, ",") m_GaochaN = Val(k(0)) m_Pnumber = Val(k(1)) m_knPnumber = Val(k(2)) M = CDbl(k(3)) For k1 = 1 To m_knPnumber Line Input #1, linedata k = Split(linedata, ",") a(k1)= k(0) GetstationNumber (a) H(k1) = CDbl(k(1)) Next Close #1 (3)将读入点名存储到点名数组中,且返回该点名所对应编号 Function GetstationNumber(name As String) Dim i As Integer For i = 1 To m_Pnumber If P_Name(i) <> "" Then '将待查点名与已经存入点名数组的点比较 If P_Name(i) = name Then GetstationNumber = i Exit For End If Else '待查点是新的点名,将新点名放到P_Name 数组中 P_Name(i) = name GetstationNumber = i Exit For End If Next i End Function (4)从文本文件中写数据(将从data.txt 读入的数据,写入到result.txt 文件中) Open“C:\Users\ WH\Desktop\ 练习\result.txt” For Output As #1 outstring = outstring + str(m_GaochaN) +","

程序设计基础实践课目标要求

程序设计基础 课程实践目标要求 一、课程实践目标 程序设计基础课程实践是督促和检验学生程序设计综合能力的教学环节,通过课程实践使学生综合使用所学过的C语言程序设计知识,掌握结构化程序设计的基本思路和方法,在所掌握的基本知识和技能的基础上,进一步提高自学能力和查找资料的能力,解决一定程度的复杂的结构化程序设计问题,加深对所学知识的理解与掌握,增强学生利用自己所学知识解决实际问题的能力,为以后的程序开发打下基础。 课程实践的目的和要求: 1、使学生巩固和加强《C语言程序设计》课程的理论知识。 2、使学生掌握C语言的基本概念、语法、语义和数据类型的使用特点。 3、使学生掌握C语言程序设计的方法及编程技巧,能正确使用C语言编写程序。 4、进一步理解和运用结构化程序设计的思想和方法;学会利用传统流程图或N-S图表示算法。 5、使学生掌握调试程序的基本方法及上机操作方法。 6、掌握书写程序设计开发文档的能力,使学生学会撰写课程实践总结报告。课程实践的思想和方法还可以作为学生做毕业论文时的参考资料。 7、通过查阅手册和文献资料,培养学生独立分析问题和解决问题的能力。为学生做毕业设计打好基础。 8、初步掌握开发一个小型实用系统的基本方法:结合实际应用的要求,使课程实践既覆盖知识点,又接近工程实际需要。通过激发学习兴趣,调动学生主动学习的积极性,并引导他们根据实际编程要求,训练自己实际分析问题的能力及编程能力,并养成良好的编程习惯。 9、培养学生的创新能力和创新思维。学生可以根据指导书和相关文献上的参考算法,自己设计出相应的应用程序。 10、培养学生良好的程序设计风格。在实际编程中,为了提高编程质量,对空行、空格和注释均有要求。学生在课程实践书写代码时,应该严格按要求处理,以便建立良好的程序设计风格。 二、课程实践内容 1.基本要求 ⑴课程实践题目选一,可以协商合作,但每名同学必须完成每个功能函数,甚至每条语句的作用。只有了解了整个程序设计思路,每个函数、设置每条语句的作用,才达到开“计算机与程序设计语言”这门课的目的。

编程实习心得体会

编程实习心得体会 编程实习心得体会1 此次只实训了短短的三周。虽说时间很短,但其中的每一天都使我收获很大、受益匪浅,它不但极大地加深了我对一些理论知识的理解,不仅使我在理论上对Java有了全新的认识,在实践能力上也得到了提高,真正地做到了学以致用,更学到了很多做人的道理,对我来说受益非浅。除此以外,我知道了什么叫团队,怎样和团队分工合作;同时我还学会了如何更好地与别人沟通,如何更好地去陈述自己的观点,如何说服别人认同自己的观点。这也是第一次让我亲身感受到理论与实际的相结合,让我大开眼界。也是对以前所学知识的一个初审吧!这次实训对于我以后学习、找工作也是受益菲浅的,在短短的三周中相信这些宝贵的经验会成为我今后成功的重要的基石;这对于我的学业,乃至我以后人生的影响无疑是极其深远的。 这次实训虽然是我们的第一次,不过同学们表现不错,由此看来,我们在进入大学的这几个月里学到了不少的专业知识,只是自己感觉不到而已。对于所学专业,我们不能过于自卑和担忧,否则会妨碍自己学习。实训是学习Java的重要环节,有利于我们巩固专业知识、掌握工作技能,提高就业筹码。 我把本次为期三周的实训看作是“理论与实践相结合的桥梁”。通过这周的实训和学习,我知道了此次实训的目的,也清楚目前自己的不足,那就是缺乏相应的知识与经验,对所学的专业知识不能够很好地运用于实践操作。正所谓“百闻不如一见”,经过这次自身的切身实践,我才深切地理会到了“走出课堂,投身实践”的必要性。平时,我们只能在课堂上与老师一起纸上谈兵,思维的认识基本上只是局限于课本的范围之内,也许就是这个原因就导致我们对专业知识认识的片面性,使得我们只知所以然,而不知其之所以然!限制了我们网络知识水平的提高。但是课本上所学到的理论知识是为我们的实际操作指明了方向、提供相应的方法,真正的职业技巧是要我们从以后的实际工作中慢慢汲取的。而针对实际操作中遇到的一些特殊的问题,我们不能拘泥于课本,不可纯粹地“以本为本”。 在这次实训中我得到了许多收获,我第一次体会到Java工程师的工作是什么样子的,也发现了很多不曾注意到的细节,在实训的演示过程中,我对作为一名Java工程师注意的事项应该从小事做起、从基本做起。把职业能力训练与职业素质有机的结合起来。相信这对我接下来学习专业知识会起到很有效的帮助,在接下来的几个月里,我会以作为一名职业人的身份在这几个方面要求自己,严格自我,向Java工程师靠近。 而经过这次实训,让我明白如果是一个完整项目的开发,必须由团队来分工合作,否则,即费力又费时还做不好这个项目。因此不管在工作中还是在生活中要和老师、同学保持良好的关系是很重要的。做事首先要学做人,要明白做人的道理,如何与人相处是现代社会的做人的一个最基本的问题。对于自己这样一个即将步入社会的人来说,需要学习的东西很多,他们就是最好的老师,正所谓“三人行,必有我师”,我们可以向他们学习很多知识、道理。 实训结束了感觉虽然辛苦,但很充实。我想这就是Java工程师的工作。我也体会到Java工程师成功地完成一个任务的那种兴奋,那种小有成就的感觉是只有置身其中的人才能体会的。 总之,这次实训为我提供了与众不同的学习方法和学习体会,从书本中面对现实,为我将来走上社会打下了扎实的基础。作为在校计算机专业的学生,现在

C程序设计实训报告

C程序设计实训报 告

实训一:类和对象的定义及使用 实训目的: (1)掌握类与对象的定义与使用方法,理解面向对象方法中经过对象间传递消息的工作机制。 (2)正确掌握类的不同属性成员的使用方法。 (3)掌握构造函数与析构函数的概念,理解构造函数与析构函数的执行过程。 (4)掌握友元函数和友元类的定义和使用。 (5)基本掌握指针和引用作为函数参数的应用。 实训内容: 定义一个时间类Time,有三个私有成员变量Hour、Minute、Second,定义构造函数、析构函数以及用于改变、获取、输出时间信息的公有函数,主函数中定义时间对象,并经过调用各种成员函数完成时间的设定、改变、获取、输出等功能。 ①按要求完成类的定义与实现。 ②修改数据成员的访问方式,观察编译结果。 ③在Time类中定义一个成员函数,用于实现时间增加一秒的功能,主函数中经过对象调用该函数,并输出增加一秒后的时间信息。 ④定义一个普通函数。

void f(Time t) { t. PrintTime( ); } 在Time类中增加拷贝构造函数的定义,主函数中调用该函数,运用调试工具跟踪,分析整个程序调用构造函数(包括拷贝构造函数)和析构函数的次数;再将f函数的形式参数分别修改为引用参数和指针参数(此时函数代码修改为{t-> PrintTime( );},主函数中调用,再分析此时调用构造函数和析构函数的次数。 实训代码: #include using namespace std; class Time { private: int Hour,Minute,Second; public: Time(int h=0,int m=0,int s=0); Time(const Time &ob); ~Time(); void ChangeTime(int h,int m,int s);

《C语言程序设计》项目实训指导书

安徽国防科技职业学院 C 语 言 课 程 设 计 指 导 书 学期:12-13第1学期 班级:软件121班 实训日期:第18周

指导教师:付贤政

《C语言程序设计》项目设计指导书 实训班级:软件111班 实训时间:第18周 一、设计目的与任务 C语言程序设计是软件技术专业的重要专业基础课。学生通过对C语言的学习,已经具备了使用C语言编写简单的程序的能力。为了加强程序设计基础,开设课程设计,使学生对C语言有更全面的理解,进一步提高运用语言编程解决实际问题的能力,同时,为后续课程的学习夯实基础。 本课程设计要求每组同学在一周时间内,独立分析、设计并完成,并上交课程设计报告。可选择如下任务之一: 任务一:题目:学生成绩管理系统 功能: 1.菜单提示:在系统初始化时能在屏幕上出现提示,根据提示选择相应的操作; 2.基本功能:能正常启动程序、退出程序,能在屏幕上正常显示提示和相关信息; 3.功能一:系统数据初始化。能按照要求输入每位学生的学号、姓名,性别、年龄以及政 治、语文、数学、计算机、体育五门课程的成绩; 4.功能二:按指定形式在屏幕上打印输出学生基本信息,可按照学号、成绩顺序在屏幕上 打印输出; 5.功能三:根据姓名、学号查询。按照屏幕提示输入你要查询学生的姓名(或者学号),从 原始的数据中找到该学生的信息,并在屏幕上打印输出; 6.功能四:统计学生平均成绩,并在屏幕上打印输出; 7.功能五:将现有学生数据写入磁盘文件,然后从文件中读取出来; 8.数据的删除(选做):根据输入的学号删除指定的数据记录。(可选) 9.数据的修改(选做):根据输入要修改的学生学号,返回该学生的信息后,再逐个修改每 个学生的基本信息,最后保存修改;(可选) 分步实施: 1、初步完成总体设计,搭好框架,确定人机对话的界面,确定函数个数; 2、完成最低要求:建立房间列表,完成登记入住、查询房间入住情况功能。 3、进一步要求:完成计费和费用查询功能。 任务二:题目:酒店房间登记与计费管理系统 功能:

高级语言程序设计实验 C

陕西理工大学 《高级语言程序设计(C)》 实验报告 院系: 班级: 学号: 姓名:

目录

实验一:C开发环境与顺序结构程序设计 1.实验目的: (1) 了解集成开发环境VC++的使用方法,理解相关命令的含义,掌握编辑、编译、连接以及运行调试的方法,掌握程序的基本结构,掌握输入输出的方式。 (2) 掌握程序设计的基本要素中的数据类型、变量、运算符以及表达式的运用。 (3) 学会正确使用逻辑运算符和逻辑表达式以及关系运算符与关系表达式,掌握在程序设计中灵活使用顺序结构。 2.实验环境: (1) 硬件环境 CPU:Inter Pentium(R)4 CPU 以上 内存:2GByte (2) 软件环境 操作系统:Microsoft Windows 7 编译系统:Microsoft Visual C++ 3.实验步骤: 按如图所示流程进行实验内容的 调试。 (1) 在XP操作系统中,启动VC++ 编译环境; (2) 在VC++编译界面输入C源程 序; (3) 选择编译、组建、执行命令进 行编译、链接和运行,并记录实验 数据; (4) 按以上方法依次输入其他源程 序并调试、运行和记录实验数据。 4.实验内容: 输入并运行下列程序,查看程序运行的结果。 #include<>

void main() { printf(“* * * * * * * * * *\n”); printf(“Programing in c A Labrtry Maual\n”); printf(“* * * *\n”); printf(“*\n”); } 查看程序运行的结果 #include<> void main() { int i,j,m,n; i=8; j=10; m=++i; n=j--; printf(“%d,%d,%d,%d\n”,i,j,m,n); } 找出下列程序中的错误,改正后写出程序运行结果. #include<> void main() { Int x,y=z=5,aver; x=7; AVER=(x+y+z)/3 printf(“AVER=%d\n”,aver); }

最新大学生c语言程序设计实训报告总结

大学生c语言程序设计实训报告总结 C语言是在国内外广泛使用的一种计算机语言。其语言功能丰富、表达能力强、使用灵活方便,,小编整理了大学生c语言程序设计实训报告总结,希望能帮助到您。 大学生c语言程序设计实训报告总结一 C语言是在国内外广泛使用的一种计算机语言。其语言功能丰富、表达能力强、使用灵活方便、既具有高级语言的优点,又具有低级语言的许多特点,适合编写系统软件。其功能强大,不仅用在计算机上广泛用在电子,机械等方面上,而且,所有的windows,Unix,Linux,Mac,os/2,无一例外,哪一个不是C语言写的?很多新型的语言如,C++,Java,C#,J#,perl...都是衍生自C语言。掌握了C语言,可以说你就掌握了很多门语言。 学习C程序这门课一年了,这是我们学的第一门专业课,在大学里C语言不但是计算机专业的必修课程而且也是非计算机专业学习计算机基础的一门必修课程。所以作为我这个计算机专业的学生来说当然十分重要,老师在第一节课说过,C语言是计算机的基础,大多数软件都需要用C语言来编写,通过一个年的学习,使我由初步掌握简单的应试知识到完成高难度的深入编程,如我们在编写一个较大的程序时应该把它分开成几个小程序来看,这样会容易得多。同时,我觉得C语言应该是操作和理论相结合的课程,在不断地编写中去思考,两者是不可分割的。 在学习一年C语言的过程中我也在慢慢探索怎样才能学好C语言,

并总结了一点经验: 要了解C语言就要从语法规为基础来学习起,首先要是要了解它的结构,比如变量,首先要了解变量的定义方式(格式),其意义是什么(定义变量有什么用);其次就是要我要怎么去运用它(我要用什么型式去应用它)。在C语言的命令行中所有的语句都是有它自己的一定格式和形式出现在我们面前,所以我们在学习某种语句或命令时你首先要了解的就是它的规则是什么、有什么用、怎么实现等。这些都是语法基础也是C语言的基础如果把它们都了解很好了,那么你编起程序来就很得心应手了。比如说IFELSE和SWITCHCASE这两种条件语句都是用来判断执行功能的,那我要什么时侯用IF什么时侯用SWITCH 呢?如果你很好地了解它们的结构和作用的话那么就知道:若它的条件分支是多个而且条件的值是整数或是一个字符值时就会选SWITCH 而不会选IF。因为如果条件分支太多时要用IF语句,这样一定会出现IF的嵌套,如果IF的嵌套越多时程序的开销就会随着增大,这样对整个程序的运行效率就大在降底。而SWITCH就不同,它只要比较一次就可以找出条件的结果比起嵌套IF它的效率就大大的提高了很多。不过SWITCH也有它的约束条件,就是它的条件值一定要是一个整型数或是一个字符值,所以碰到它不能解决的问题时我们也会通常使用IF语句,毕竟IF语句它使用起来也比较方便用的范围也比较广。所以说了解语法规则是很重要的,如果没有一个良好的语法基础是很难编出一个好的程序!学习好基础后我们就可以开始来编程了。 大学生c语言程序设计实训报告总结二

C语言程序设计实验-答案

-前言- /*非常感谢度娘以及各位网上C语言高手的支持,才能让敝人完成此文档的整理。 本文档集合了本人、度娘、众网友的力量,其中代码的正确率约为90%(不正确的有标注)。为回报度娘及众网友的帮助,本文档免费下载。 */ /*配“电子科技大学出版社(周信东主编)”的C语言程序设计实验*/ /*努力吧,骚年以及学妹们!*/ /*整理ed by 口玉刀一of GUET.*/ ===================== 实验一C语言程序初步 ===================== 1.---------------------------- 已知a=5,b=4,c=6,求出s并换行 #include"stdio.h" main() { int a,b,c,s; a=5;b=4;c=6; s=(a+b+c)/3; printf("a=%d,b=%d,c=%d\n,s=%d",a,b,c,s); } 2.------------------------------- 输入一个数字求他的平方 #include main() { int r,s; scanf("%d",&r); s=r*r; printf("s=%d\n",s); } 3.-------------------------------- (1) #include main() { printf(" *\n"); printf("***\n"); printf(" *\n"); } (2) #include

{ int v; int a,b,c; //a,b,c aer sides,v is volume of cube a=3;b=3;c=5; v=a*b*c; printf("v=%d\n",v); } ================================= 实验二数据类型、运算符和表达式 ================================= 1. (1)-------------------------------------------------- //总觉得打印结果怪怪的,DO YOU THINK SO? main() { char s1='3',s2='4',s3='5'; int c1=101,c2=102; printf("3%c\t4%c\t5%c\n",s1,s2,s3); //3%c为输出3和%c printf("s1=%d\ts2=%d\ts3=%d\n",s1,s2,s3);//注意哦,s1,s2,s3是char!而%d:输入输出为整形%ld 长整型%hd 短整型%hu无符号整形%u %lu%s:输入输出为字符串%c字符%f:输入输出为浮点型%lf双精度浮点型printf("c1=%d\t~%c\n",c1,c1); //换码符'\t',表示水平制表位(horizeontal tab),它的作用是将光标移到最接近8的倍数的位置 printf("c2=%d\t~%c\n",c2,c2); //注意c1,c2的类型 } (2) //运行结果为8.300000 %是求余数先运算x-y,把结果转换为int型的有利于四则运算 main() { float x=8.3,y=4.2,s; int a=7; s=x+a%5*(int)(x-y)%2/3; printf("s=%f",s); }

《程序设计实践》课程安排及要求-2017

《程序设计实践》课程设计任务书 适用专业年级:电信类2016级 1. 课程安排 1.1 教学目标与任务 《程序设计实践》是电信类专业的一门重要的实践课。 本课程设计是为使《程序设计基础(C语言)》课程取得更好的教学效果而设置,是进一步培养学生综合应用VC的各种编程知识和技巧进行应用程序编写的实际能力,包括:⑴训练学生掌握对数组、指针、链表、文件等的基本操作;⑵训练学生掌握模块化程序设计方法;⑶训练学生对一个实际应用系统进行综合分析、设计、编程及调试等的能力;⑷培养学生自主学习和独立创新的精神。 通过本课程的学习,要求学生能够运用C语言的理论知识,运用流程图的基本手段,熟悉C语言的标准编程规范,取得程序设计说明书及源代码等成果。 同时,通过本课程的学习训练学生文档编写能力、问题的分析与解决能力、流程图的绘制能力、代码编写能力、程序调试能力、小组协调与合作能力等,从而强化学生对C语言的认识,能够熟练使用C 语言的基本语法结构,能够运用C语言的函数进行小组开发,并利用流程图进行程序设计和交流,掌握code review的形式和方法,掌握自主开发中小型程序的能力,了解大型程序开发的步骤和方法。 1.2 基本要求 本课程要求以一人一组的形式进行程序开发。在课程结束(含中期阶段性结束)时,每人都需提交以下几份成果: 1) 电子版的系统设计报告 2) 纸质版的课程设计报告 3) 程序源代码 1.3 课程阶段说明 本次课程设计分为两个阶段,第一个阶段为1-8周,第9周进行考核(考试),主要训练程序设计的基本功,包括程序设计三个基本结构、函数、数组、指针、链表、文件等的基本操作和部分典型算法;第二个阶段为10-17周,利用模块化的程序设计方法,对一个应用系统进行分析、设计和编程调试并撰写课程设计报告。本课程分为两个阶段,如表1所示。 表1 课程的3个阶段 1.3.1 基本能力训练阶段 按要求完成基本能力训练阶段的所有题目(题目见2.1): 1.3.2 系统程序设计阶段 根据给定的综合程序设计题目(2.2),选择1题或自主选择题目。完成对题目的功能分析,数据结

合工大汇编语言程序设计实验报告

合肥工业大学计算机与信息学院 实验报告 课程:汇编语言程序设计专业班级:**************** 学号:********** 姓名:***** 目录

实验一 (3) 实验二 (7) 实验三 (12) 实验四 (22)

实验一Debug程序的使用 一.实验目的 1、熟悉DEBUG程序中的命令,学会在DEBUG下调试运行汇编语言源程序。 2、掌握8086/8088的寻址方式及多字节数据的处理方法。 二.实验内容 1、利用DEBUG程序中的“E”命令,将两个多字节数“003F1AE7H”和“006BE5C4H”分别送入起始地址为DS:0200H和DS:0204H两个单元中。 2、分别用直接寻址方式和寄存器间接寻址方式编写程序段,实现将DS:0200H 单元和DS:0204H单元中的数据相加,并将运算结果存放在DS:0208H单元中。要求: 本次实验的内容均在DEBUG下完成,实现数据的装入、修改、显示;汇编语言程序段的编辑、汇编和反汇编;程序的运行和结果检查。 三.实验过程和程序 实验内容一: e ds:0200 E7 1A 3F 00 e ds:0204 C4 E5 6B 00 实验内容二: (1)直接寻址方式 MOV AX,[0200] MOV BX,[0202] ADD AX,[0204] ADC BX,[0206] MOV [0208],AX MOV [020A],BX (2)寄存器间接寻址方式 MOV SI,0200H MOV DI,0204H MOV BX,0208H MOV AX,[SI] MOV DX,[SI+2] ADD AX,[DI] ADC DX,[DI+2]

编程实训心得体会范文3篇

编程实训心得体会范文3篇 编程技术的学习是一个分阶段不断提高的过程,因此教材的内容应按不同的学习阶段进行合理的分配。下面是OK带来的编程实训心得体会范文,欢迎大家阅读。 经过五天的Java实训,感触很深,收获也很大,对自己的缺点也有了很多的认识,回首本学期JAVA学习,重点还是在学习概念等一些常识性的东西,关于类型、变量、接口、输入输出流、分析异常、抛出异常,后期主要是小程序运用,Gui界面设计和事件。 在我学习的语言中,我自己认为Java是一门比较强大的面向对象的编程语言,不仅仅是因为它的跨平台型还有它的较强的实用性,强悍的嵌入性。 本次实训主要是针对我们对项目流程不熟悉和对整体项目的把握不清楚,学习数据库的设计和表的建设以及表与表之间的联系,还有一些代码的编写,这些都是我们所不熟悉的也是我们最薄弱的部分。 通过这一周的实训,虽然实训的时间不长,但是总体上收获挺大的,当我们正式准备学习实训java编程技术时,让我感到非常高兴,因为java一直学的是课本知识,所以实训对于我来说是必须要

学会熟练操作的。当然开始学习后也并非是想象中那样顺利,开始的学习让我异常感到学习任务的艰巨,因为学习中我遇到了很多以前未曾遇到的难点,有时后也难免会失去耐心,但是,通过老师的指导,自己的努力的练习,我顺利的化解了一道道的障碍。克服了Java学习上的一道道难关,现在自己已经基本掌握了java的基础知识。 有些知识点以前没有学过,但我也没有去研究,实训时突然间觉得自己真的有点无知,虽然现在去看依然可以解决问题,但要浪费许多时间,这一点是我必须在以后的学习中加以改进的地方,同时也要督促自己在学习的过程中不断的完善自我。另外一点,也是在实训中必不可少的部分,就是同学之间的互相帮助。所谓”当局者迷,旁观者清”,有些东西感觉自己做的是时候明明没什么错误,偏偏程序运行时就是有错误,让其他同学帮忙看了一下,发现其实是个很小的错误。所以说,相互帮助是很重要的一点,这在以后的工作或生活中也是很关键的。俗话说:“要想为事业多添一把火,自己就得多添一捆材”。 此次实训,我深深体会到了积累知识的重要性。在实训当中我们遇到了不少难题,但是经过我们大家的讨论和老师细心的一一指导,问题得到了解决。两个月的实训结束了,收获颇丰,同时也更深刻的认识到要做一个合格的程序员并非我以前想像的那么容易,

程序设计实训的个人心得体会

程序设计实训的个人心得体会 在软件实验室经过2个星期Jsp程序设计实训,从对软件开发没有太多经验的我掌握了更多的软件开发的方法和技能,收获颇多。 经过这次理论学习,了解到要做好软件开发,要求掌握的知识并不是只有编写代码方面的,网络、数据库、操作系统等的知识对做好项目开发是很有帮助的。这让我明确了以后学习的目标,在不断学习软件开发的同时,也应该继续其他相关知识的深入学习。 实训期间经历的许许多多,给我们带来了很多很多有实无形的东西,知识、友情以及团队开发的热情,快乐无一不包围着我们。在这我很想感谢几个人,王璐老师和班上一同参与这次实训的2位同学。王璐老师对我们备至关心,不论在学习前后,都给予我们关怀不少,并且王璐老师不愧是从事多年软件开发的专业人士,其深厚的专业技能知识和丰富的经验令我等钦佩无比。对于我们未出茅庐的大学生而言,遇到的问题多而复杂,询问有经验的人,他们或许一句话就能解决问题,而自己就得找资料或上网摸索可能要一两天,有时甚至绞尽完脑汁都不得其解。用个词形容,老师的解答如醍醐灌顶,而对我们,则甘之如饴。 实训这段期间真的好累,尽管实验室给我们提供了一个相当不错的上课学习环境,但是整天木木地待在实验室面对毫无生气的荧屏,为 code而烦恼,为bug而郁闷,被文档所包围,随程序侵蚀。然而,

这就是学习的生活,既选之也则安之。忙碌的生活让我每天似乎没有太多的时间去想一些其他的事,耐心的去调试,专注的去编写更好的算法,沉浸充实和快乐之中。 更重要的是,两个星期的实训使我们明白我们所欠缺的不仅仅是技术知识,更重要的是有一种处理事情的方法、面对问题的心态和动手能力。面对完全陌生的新知识、新技术、新项目以及整个IT行业,我们不能畏惧,要以一种积极的心态去面对,分析并抓住关键所在。因为我们所即将应对的每一个项目都是既需要实际操作,又需要详细规划的。作为组长,协调组员、激励其他组员和积极参与项目开发是我每天必做的工作。我认为每个人都应该在团队中做好自己应尽的职责,再优秀的个人也可能完成一个即庞大又复杂的项目工作,我们必需紧密的联合在一起,以一个团队的角色来面对。 总之,这次实训为我们以后从事软件开发工作打下了良好的专业基础,为我们的进一步学习提高打下了扎实的理论基础。 Jsp程序设计实训在不知不觉中就结束了,我感觉自己还有好多理论知识要学,还有好多的技术不懂呢!这是我大学以来第三次实训,每次实训我都感觉学到了好多东西!因为是一天到晚的不间断训练,所以记的会非常牢固。不像平时上课,每上两次的理论课却只有90分钟的实际操作。在课上,做的练习小项目都不复杂,可轮到做大的项目实训并且要求我们独立完成的时候,,就不那么顺手了,一个个技术问题,一个个bug接踵而至!我很感谢学校有实训这样的安排,把我们这一学期学的东西系统的集中的进行训练,对我们计算机水平

选择结构程序设计-C语言程序实验报告

安徽工程大学 高级语言程序设计实验报告 班级姓名同组者/ 成绩 日期2019.10.10 指导教师 实验名称选择结构程序设计 一、实验目的 1.学会正确使用关系运算符和关系表达式。 2.学会正确使用逻辑运算符、逻辑表达式以及关系表达式等。 3.熟悉掌握if语句和switch语句的用法。 4.熟悉选择结构程序中的语句执行过程,掌握选择结构程序设计的方法。 二、实验内容 1.编写程序,判断从键盘上输入的一个字符类型,并按下列要求输出。 (1)若该字符是数字,输出字符串“0~9”。 (2)若该字符是大写或者小写字母,输出字符串“A~z”。 (3)若该字符是其他字母,输出“!,@,……”。 完善P56页第一个源程序,对源程序进行编译、连接并运行,完成调试报告。 2.编程并上机调试。 (1)给出一个不多于4位的正整数,求它是几位数。 (2)给出一个百分制成绩,要求输出成绩等级'A'、'B'、'C'、'D'、'E'。 90分以上为'A',80~90分为'B'70~79分为'C',60~69分为'D',60分 以下为'E'。用switch语句来实现。 (3)输入4个整数,要求按从小到大的顺序输出。 (4)输入3个整数,将最大数与最小数输出。 (5)输入一个字符,如果是数字字符,把它转换成相应的数字输出;如果不是,则以十进制整数形式输出其ASCⅠⅠ码值。 *思考题

3.若在实验内容1的程序第8行的语句else if (_)后多输入了一个分号,即“else if (_);”,分析程序,写出预期结果,然后输入调试,查看运行结果与预期结果是否一致并分析原因。 4.若在实验内容1的程序第8行的语句else if(_)法人括号内输入c>='A' &&c<='z'后,判断在调试时是否能得到正确结果,并分析原因。 三、算法流程图或实验步骤(可根据需要增删、修改) 1.(1)算法流程图 #include void main( ) { char c; scanf("%c",&c); if(c>='0'&&c<='9') printf("0~9\n"); else if((c>='a'&&c<='z')||(c>='A'&&c<='Z')) printf("A~z\n"); else printf("!,@,……\n"); } (2)实验步骤 Files→New→Files→C++source File→文件名:program3011.c→位置:E:\123\→确定→完善源程序→Buid→是→确认0error(s) 0warning(s)后→BuidExecute→查看运行结果 2.(1)算法流程图: #include void main ( ) { int a,b;

java程序设计实训心得体会

java程序设计实训心得体会这次实训,我们更多学到的是不懂就问和自己应该尽自己的全力去尝试,哪怕失败,只要自己尽自己的全力,和身边同学一起探讨而不是抄袭,团结合作,发挥团队意识,最后在自己的努力下,终于运行成功,这种成就感美不可言,心情愉悦至极。下面是小编整理的相关内容,欢迎大家阅读! 回顾这次的实训,这次或许是最后的实训机会。我是一名大二的学生,明年或许就要出去实习了,所以我很珍惜这次的实训机会,因为它能够让我了解自己的不足以及以后自己努力的方向,同时也能让我了解软件开发的流程,增加一点软件开发经验和社会经验。让我在以后的实习中会更好的融入到其中,增加自己的就业机会,因为纵观现在的就业形势很不让人乐观,由于之前的经济危机,就业机会越来越少,就业也越来越难,这就给了我们很大的压力,所以要是没有真本事,就业岗位就无从谈起,因此,在以后的学习中,我会更加好好努力。 通过这次的实训,我学到了很多: 首先,对JAVA识比以前有了更深的了解。在这之前由于种种原因我JAVA学的很不好,编程我几乎写不出来。但经过这次的实训,我对JAVA的理解,虽然还有很多都不懂,但我会在今后的实训和学习中加以学习了解,力求弄懂,增

强自己对JAVA的理解。 其次,在这次的实训中我的动手操作能力有了一点的提高,刚开始的时候JDK的配置,数据库的安装都出现了一定的问题,JAVA 可实话开发工具的不熟悉,所以开始的时候进程很慢,时间都用在了JDK的配置,数据库的安装以及熟悉JAVA可视化开发工具上,但付出有了回报,成功的配置了JDK,安装了数据库,熟悉了JAVA可视化开发工具,总的说来,自己还是有一定的收获的。因为自己的动手操纵能力得到了提高。 最后是团队协作。在整个项目完成过程中团队协作有着不可替代的作用。从在刚拿到项目时对项目的分析到最后的项目完结的都有一定的体现。刚拿到项目时,我们团队进行了分析,并分配了各自的任务。当我们其中一人遇到问题的时候,我们其他人都会去帮忙,效率提升了很多。但可能由于不是一个宿舍的,大家彼此间都不是很了解,所以交流中还是存在了一定的问题。 在这次的实训当中我收获颇丰。但仅仅靠这一个月的学习还是远远不够的。所以在以后的学习中我会更加努力,提高自己的能力,让自己在以后的社会道路上打下坚实的基础。 此次只实训了短短的三周。虽说时间很短,但其中的每一天都使我收获很大、受益匪浅,它不但极大地加深了我对

C语言程序设计实训报告

C语言程序设计实训报告班级:姓名:学号: 实训目的能力目标 全面熟悉、掌握C语言基本知识,掌握C程序设计中数组、函数、指针的操作,把编程和实际结合起来,增强对不同的问题运用和灵活选择合适的数据结构以及算法描述的本领,熟悉编制和调试程序的技巧,掌握分析结果的若干有效方法,进一步提高上机动手能力,培养使用计算机解决实际问题的能力,规范编程思想,为以后在专业课程中应用计算机系统解决计算、分析、实验和设计等学习环节打下较扎实的基础。 实训要求: (1)掌握C语言中的基本数据输入、输出; (2)熟练使用C语言中的数组; (3)熟练使用C语言中的函数; (4)熟练使用C语言中的指针; (5)熟练使用C语言中的结构体。 实训内容(过程及步骤) 设计题目:简单计算器 1、基本思路: 先自定义好加、减、乘、除、求余、求周长、求面积等函数。在写主函数调用前面的自定义函数,进行计算,选择好计算种类,输入2个数回车进行计算得到结果。 2、程序: #include"" #include""

{ floata[2]; printf("您选择了加法\n"); printf("请输入:\n"); scanf("%f",&a[0]); scanf("%f",&a[1]); printf("%g+%g=%g\n",a[0],a[1],a[0]+a[1]); } voidjianfa() { floata[2]; printf("您选择了减法\n"); printf("请输入:\n"); scanf("%f",&a[0]); scanf("%f",&a[1]); printf("%g-%g=%g\n",a[0],a[1],a[0]-a[1]); } voidcheng() { floata[2]; printf("您选择了乘法\n"); printf("请输入:\n"); scanf("%f",&a[0]); scanf("%f",&a[1]); printf("%g*%g=%g\n",a[0],a[1],a[0]*a[1]); } voidchu() { floata[2]; printf("您选择了除法\n"); printf("请输入:\n"); scanf("%f",&a[0]); scanf("%f",&a[1]); printf("%g/%g=%g\n",a[0],a[1],a[0]/a[1]); } voidyu() { inta[2]; printf("您选择了求余\n"); printf("请输入整数:\n"); scanf("%d",&a[0]); scanf("%d",&a[1]); printf("%d求余%d=%d\n",a[0],a[1],a[0]%a[1]); }

c++程序设计实验报告(参考题答案)

实验要求: 对大纲中列出的四个实验要求: 1.以面向对象的程序设计思想编程。 2.熟悉面向对象程序设计语言VC++编程环境。 3.在计算机上快速完成程序编写、调试、运行。 分别写出实验报告(三页以上),要求详尽描述根据实验内容要求,自己设计的上机编程源程序和结果,包括关键性截图。完成实验报告和上交源程序。 备注: 1.《计算机应用技术》(专)、《计算机应用基础》(专)、高级语言程序设计(一)(专)要求学生进行上机操作,保留上机操作原程序,每门课程每个学生形成一个文件夹,文件夹以学生准考证号+姓名命名,最后试点院校汇总,刻录光盘上交主考院校; 2.《口语》(专)、《口译与听力》(本)要求考生进行现场练习,由试点院校教师录制相关材料,每门课程每个学生形成一个文件夹,文件夹以学生准考证号+姓名命名,最后试点院校汇总,刻录光盘上交主考院校; 3. 论文,作业,实验报告,案例分析,前沿思考,学习报告等均要求A4 严禁打印、复印; 4.试点院校按百分制录入成绩,录入后打印学生成绩单; 5.按照系统成绩单的顺序将上报的学习过程评价成绩材料排序并打捆; 6.实践课程考核评估记录表》也需按照成绩单顺序排序,单独上报; 7.有平时作业或测试试卷等可放入本人上报的材料中一并打捆上交。 交实验报告时间: 10月8日假期后第一天上课,务必把按照要求书写完成,并装订好的实验报告交给我,一定!一定!切记不要耽误!

实验一:简单类与对象 一、实验目的 1、熟悉VC++的编程环境,掌握VC++ 6.0的调试方法。 2、掌握简单的类与对象的定义。 二、实验内容 用类定义,输入半径和高,输出圆柱体的底面积和体积。 三、实验要求 1、硬件设备:奔腾Ⅱ及以上计算机,局域网。 2、软件环境:WINDOWS XP、VC++6.0。 3、实验课前预习,课后及时完成实验报告。 4、实验过程及记录按题目格式要求填写在代码清单中。 四、代码清单或实验步骤 #include using namespace std; const float PI=3.14159f; class Cylinder{ private: float radius; float high; public: Cylinder(){} Cylinder(float r,float h) { radius=r; high=h; } void setradius(float r) { radius=r; } void sethigh(float h) { high=h; } float bottomarea() { return PI*radius*radius; } float volumn() { return bottomarea()*high; } };

相关主题
文本预览
相关文档 最新文档