预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共14页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

《C语言程序设计》实验指导书课程编号:课程名称:C语言程序设计实验学时:44一、本实验课的性质、任务与目的本实验课目的是使学生掌握C语言编程的常用方法,熟悉该语言中的语法、词法规则,为以后进行软件开发和学习后继专业课程打下基础。通过学习能够运用C语言中的各个知识点编写能完成一定功能的程序。训练学生进行复杂程序设计的技能和培养良好程序设计的习惯,其重要程度决不亚于知识的传授。把高级语言的学习与程序设计、上机实践紧密地结合起来,以提高学生能灵活运用新的知识分析问题和解决问题的能力。二、本实验课所依据的课程基本理论本实验课基于C语言的语法和词法规则、数据的表示及算法的处理,而语法及算法正是高级语言程序设计的主要研究对象。《C语言程序设计》的主要任务是:C语言是一种应用广泛结构化程序设计语言,本课程介绍C语言的基本概念、基本语法和编程方法,重点描述C语言的结构化的特征,并通过本课程的学习,使学生掌握一定的结构化程序设计的知识,以及用C语言编写程序的能力。三、实验类型与要求在做每个实验之前,让学生对本次实验相关的内容进行预习、算法设计、流程图的设计、编写程序,做好实验的准备工作;写出预习报告,画出流程图,要求独立完成。说明:1、实验类型:设计性;2、实验要求:必做。四、每组人数与实验学时数每组1人,实验学时数44学时。五、考核方式与评分办法实验总成绩=出勤情况*10%+实验报告*20%+平时*30%+实验表现*40%六、本实验课配套教材或实验指导书谭浩强.C程序设计.北京:清华大学出版社,2006年3月第3版谭浩强.C程序设计题解与上机指导.北京:清华大学出版社,2006年3月第3版谭浩强.C程序设计试题汇编.北京:清华大学出版社,2006年3月第2版夏宽理.C语言程序设计.北京:中国铁道出版社,2006年2月第1版夏宽理.C语言程序设计上机指导与习题解答.北京:中国铁道出版社,2006年2月第1版王士元.C高级实用程序设计.北京:清华大学出版社,1996年1月第1版七、实验报告要求在机器上交作业,每次实验成绩分为优、良、及格、不及格,未参加的为0分。要求认真书写实验报告。实验报告编写要求:1.实验题目2.实验要求3.程序流程图4.调试过程(实验过程出现的问题、解决的方法)5.程序代码及运行结果。八、实验内容实验一:C语言运行环境的认识与简单的C程序【目的与要求】1、了解TC环境下C语言的运行环境,熟悉编译系统的操作环境。2、了解在该系统上如何编辑、编译、连接和运行一个C程序。3、通过运行简单的C程序,初步了解C源程序的特点。4、掌握和理解C程序中最基本的C语句。【实验内容】1、题目:由键盘输入两个整数,计算并输出两个数之和。2、程序如下:#include“stdio.h”voidmain(){inta,b,sum;printf(“Pleaseinputtwointegernumbers:\n”);scanf(“%d%d”,&a,&b);sum=a+b;printf(“%d+%d=%d”,a,b,sum);}3、具体操作:(1)输入程序,然后进行编译连接。若在编译中有词法或语法错误,则根据提示进行修改,再进行调试,直到没有语法错误。(2)运行程序,依下列不同的方式输入数据,查看程序执行结果。①12_34↙②12↙34↙③12<Tab>34↙【实验分析与讨论】1、总结C程序的基本结构和书写规则。2、分析调试过程中常见的错误提示和解决策略。实验二:C语言程序的单步调试实验三:选择结构的程序设计【目的与要求】1、了解三种基本数据类型的定义。2、掌握各种不同运算符及其对应的表达式的使用。3、熟练掌握if语句和switch语句的使用【实验内容】一、判断方程ax2+bx+c=0有几个解,若有,则输出其解。1、算法分析:对于方程ax2+bx+c=0的解,存在以下情况:①a=0,不是一元二次方程;②b2-4ac=0,有两个相等的实根;③b2-4ac>0,有两个不等的实根;④b2-4ac<0,有两个共轭复根。(1)定义变量:a,b,c,x1,x2,d(2)输入a,b,c(3)if(a==0)不是一元二次方程elsed=b2-4ac根据d的取值,输出方程根的情况:if(b2-4ac==0)x1=x2=-b/(2*a)elseif(b2-4ac>0)x1=(-b+sqrt(d))/(2*a)x2=(-b-sqrt(d))/(2*a)elsex1=(-b+sqrt(-d)i)/(2*a)x2=(-b-sqrt(-d)i)/(2*a)2、程序代码:#include“stdio.h”#include“math.h”voidmain(){floata,b,c,x1,x2,d;printf(“请输入ax2+bx+c=0方程三系数值:”);scanf(“%f%f%f”,