实训报告1

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

** **学院

实训报告

实训科目《C语言基础实训》

系部名称: 信息工程系

专业班级: 信管09—1

学生姓名: ***

学号: *********

指导教师: **********

指导教师评语

目录

1.概述 (2)

1.1课程设计目的 (2)

1.2课程设计要求 (2)

1.3课程设计的基本步骤 (2)

1.4课程设计的进度安排 (3)

1.5其它要求 (3)

2.实训项目及其说明 (3)

2.1项目一 (3)

2.2项目二 (4)

2.3项目三 (5)

2.4项目四 (6)

2.5项目五 (7)

2.6项目六 (9)

3.课程设计总结 (11)

4.相关调试软件的使用说明 (12)

5.相关错误及改错 (12)

6.参考文献 (16)

第一部分

一、课程设计的性质和目的:

基础语言程序设计是计算机及相关专业的一门公共基础课,也是一门实践性很强的课程。它使学生获得面向过程程序设计的基本编程训练。每个学生必须完成一定数量的上机作业。通过上机作业进一步加深对课程基本内容的理解。同时,在程序设计方法及上机操作等基本技能和科学作风方面受到比较系统的、严格的训练。

二、课程设计教学的基本要求和内容:

实践证明,对语言的学习除了学语法之外,还必须经过大量的实践训练(如何阅读、编写与修改、调试程序),授课与上机实训相结合,以提高学生实际应用能力提高动手能力,这就要求学生上机前先编好程序,在老师的指导下,认真调试,对于存在的问题加以分析。

由于学生编程和上机的熟悉程度往往差别较大,本大纲所要求的实验为每个学生必须完成的实验,即最低要求。

鉴于信息系各专业普遍以“C语言程序设计”为基础程序设计语言,故本大纲以“C语言程序设计”为主设定实训内容和要求。

实验实训的基本要求是:

1、严格按要求使用计算机等相关实验设备;

2、通过实验实训提高动手操作能力;

3、通过实验实训学会用专业知识分析问题、解决问题的基本方法和步骤;

4、能够用理论指导实践;

5、通过实验实训加深对理论知识的理解;

6、能够掌握一定软件开发技术,具备一定的软件开发能力。

三、课程设计的基本步骤:

设计的课题尽量结合教学、科研的实际课题,规模、大小适当,具有一定复杂度。应根据题目大小、难度确定是否分组,组内成员人数。

1.需求分析和系统分析

根据所选题目,进行必要的需求分析,总结系统所要完成的功能,最终形成完整的需求分析和系统分析。

2.编码

在系统分析的基础上,根据已设计的数据库结构,编写系统代码。

3.测试

按照系统测试的原则、方法和步骤,对系统进行测试。测试中应形成测试报告。

4.编写实训报告

四、课程设计实训的进度安排

实训进度应由学生根据实训时间、本组学生人数、系统大小、难易,自行制定项目进度

对学生的其它要求:

(1)每人一题,独立完成。

(2)应认真阅读设计指导书,了解所做的设计内容及要求,完成课设。有问题及时主动通过各种方式与教师联系沟通。

(3)学生要发挥自主学习的能力,查阅相关的参考文献;完成设计任务。

(4)认真撰写实训报告,要求格式规范、文字通顺。

(5)相关实训上交资料:

①源程序:学生开发的所有源程序;②实训报告。

第二部分

项目一:学生成绩排名

1、实训目的

(1)熟悉变量、数组定义、使用、输入、输出等基本操作;

(2)进行选择、循环结构程序设计练习;

(3)掌握冒泡法排序的算法。

2、实训内容

(1)定义一个数组a[11],用以存放学生的成绩;

(2)从键盘输入10个学生成绩;

(3)采用冒泡法,将学生成绩按照从高到低进行排序;

(4)再输入一个学生的成绩,将此成绩按照排序规律插入原学生成绩数组;

(5)将排好序的成绩单进行反序存放,即原来是从高到低,现在改为从低到高排列。

3、实训要求

1、将以上每一步骤的结果均打印输出,验证程序是否正确实现题目要求

2、说明程序设计的算法,附主要程序段。

附:(冒泡法排序的算法)

#include

void main()

{ float t, a[11];

int i,j;

float m;}

void ex(float x[],float p);

printf("请输入10个学生的成绩:\n");

for(i=0;i<10;i++)

scanf("%f",&a[i]);

printf("\n");

for(i=0;i<9;i++)

for(j=0;j<9-i;j++)

if(a[j]

{ t=a[j];

a[j]=a[j+1];

a[j+1]=t; }

printf("学生成绩从高到低排序为:\n");

for(i=0;i<10;i++)

printf("%f ",a[i]);

printf("\n");

printf("再输入一个学生的成绩:\n");

scanf("%f",&m);

for(i=0;i<10;i++)

if(m>a[i])break;

for(j=9;j>=i;j--)

a[j+1]=a[j];

a[i]=m;

printf("插入一个学生之后学生成绩排序为:\n");

for(i=0;i<11;i++)

printf("%f ",a[i]);

printf("\n");

ex(a,11);

printf("成绩从低到高排序为:\n");

for(i=0;i<11;i++)

printf("%f ",a[i]);

printf("\n"); }

void ex(float x[],float p)

{ float t;

int i,j,q=(p-1)/2;

for(i=0;i<=q;i++)

{ j=p-1-i;

t=x[i];

x[i]=x[j];

x[j]=t; }

return; }

项目二:按条件实现学生成绩排名

1、实训目的

(1)复习数组,选择、循环结构程序设计;

(2)掌握函数的定义、调用、声明,以及参数的两种传递方式。

相关文档
最新文档