C语言习题与实验
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
习题与上机实验总的目的和要求
目的:
实验作为教学的一个重要环节,其目的在于更深入地理解和掌握课程教学中的有关基本概念,应用基本技术解决实际问题,从而进一步提高分析问题和解决问题的能力。C 程序设计课程实践性很强,即要求独立编写程序,学会独立上机调试程序。
学会独立上机调试程序。也就是要善于发现程序中的错误,并且能很快地排除这些错误,使程序能正确运行。计算机技术是实践性很强的技术,要求从事这一领域的人不仅能了解和熟悉有关理论和方法,还要求自己动手实践。对程序设计来说,要求会编写程序并上机调试通过。因此调式程序本身是程序设计课程的一个重要的内容和基本要求,应给予充分的重视。调式程序的经验固然可以借鉴他人的现成经验,但更重要的是通过自己的直接实践来积累,而且有些经验是只能“会意”难以“言传”。因此,在实验时不但要达到通过程序完成每一次的实验任务,而且应当在已通过的程序基础上作进一步的修改、提高和完善。甚至于“自设障碍”,即把正确的程序改为有错的(如用scanf函数为输入变量输入数据时,漏写“&”符号,double变量使用格式符“%f”;使数组下标出界;使整数溢出等等),观察和分析所出现的情况。这样的学习才会有真正的收获。实验目的可归纳如下:
1.验证自己已建立起来的概念或所编写的程序是否正确;
2.加深对课堂所学内容的理解和语法规则的记忆;
3.理解和掌握运用计算机高级语言进行编程的思想方法;
4.掌握常用算法的设计与应用实现;
5.熟悉UNIX等程序开发环境,掌握C程序常用的调试手段;
6.学会上机调试程序的方法,不断积累调试经验,提高排错能力;
7.使自己具有独立的应用编程和熟练的程序调试能力。
要求:
1.做好每一次上机前的准备以提高上机效率:
①预先认真阅读相关实验内容,做到心中有明确的目的要求和任务,要有备而来;
②按照实验内容规定的习题题目,事先在实验预习报告上编写好源程序及运行程序
所需的典型数据,并经人工静态检查认为无误;手编程序应书写整齐,应在每个题目之间留出一定的空间,以备记录上机调试情况和运行结果等;对程序中自己有疑问的地方,应作出记号,以便上机时给以注意。
③将想要上机验证的问题草拟提纲;制定一个简捷的程序调试计划。
2.上机时输入和调式自己所编写的程序。在使用键盘时,应采用正确的指法击键,为今后正确使用键盘打下基础;应该一人一组,尽量独立思考,上机过程中出现的问题,除了是系统的问题外,一般应自己独立处理,尤其对“出错信息”,应善于自己分析判断,并充分利用开发工具提供的错误信息和调试手段解决出现的问题,及时修改与完善源程序,随时记录有价值的内容。解决问题是学习调式程序的良好机会。初学者切不可不编程序或抄别人的程序去上机,应从一开始就养成严谨的科学作风。3.程序调试通过后,应运行程序并根据事先准备的典型数据验证结果,在运行时要注意在输入不同数据时所得到的不同结果(如解一元二次方程上时,不同的a、b、c 组合应得到实根、复根的不同结果)。此时应运行几次,分别检查在不同情况下程序是否正确。
4.为便于教师检查和以后复习,请不要删除已通过的程序,包括有问题待答疑的程序,应保存在自己的工作目录内。源程序名应能反映哪一次实验的哪一个题目,如exp1_1.c表示实验一的第一题,exp3_5.c表示实验三的第五题,exp5_1_1.c和exp5_1_2.c 分别表示实验五中第一题的方法1和方法2。若有未完成调试的源程序,可以作存盘保存处理,待下一次实验继续完成。
5.上机结束后,应整理出实验报告,实验报告应包括以下内容:
①实验目的;
②题目;
③程序清单(附算法描述或流程图);
④运行结果(必须是程序清单所对应的输入数据和打印输出的结果);
⑤调式分析和体会。这是实验报告中最重要的一项,也是最容忽视的一项。实验
过程中大量的工作是程序调式,在调式过程中会遇到各种各样的问题,每解决一个问题就能积累一点经验,提高编程的能力。应此,对实验的总结,最重要的是程序调式经验的总结。调式分析也包括对结果的分析。体会主要是指通过本次实验是否达到了实验目的,有那些基本概念得到了澄清等。
习题与实验一: C程序的运行环境与运行一个C程序的过程
一、目的要求:
1.了解所使用的计算机系统的基本操作方法,学会独立使用该系统。
2.掌握在该系统上如何编辑、编译、连接和运行C程序。
3.通过编写和运行简单的C程序,了解程序的基本结构和函数的定义形式,理解系统库函数的说明性预处理文件(stdio.h,math.h等)的概念,掌握函数的定义和系统库函数的使用。初步了解C源程序的特点。
二、习题与实验内容:
1.学习从开机开始的操作,包括按帐号登录、列文件目录、显示文件内容、删除文件、复制文件等。
2.调用文本编辑程序,输入范例程序,并进行编译和运行。应了解所用的系统是用什么命令进行编译和运行的。编译和连接后所到的目标程序的后缀是什么?
3.了解如何在运行时向程序变量输入数据和输出运行结果。
4.运行自己编写的上机习题:1,2,3,4。
三、上机习题:
1.编写一个C程序,输出以下信息:
**********************
Very Good!
**********************
2.编写计算半径为R、高度为H的圆柱体体积的程序。要求R和H的数值由键盘输入。3.阅读程序分析运行结果,并上机验证。
#include
main(){
char c1,c2,c3,c4;
scanf("%c%c",&c1,&c2);
getchar();
c3=getchar(); c4=getchar();
printf("%c %c %c %c\n",c1,c2,c3,c4);
printf("%c,%d\n",c1,c1);
printf("%d,%d\n",sizeof(c1),sizeof("1234"));
}
若从键盘分行输入以下数据,则输出结果是什么?
12↙
3456↙
提示说明:
执行getchar()函数时,首先直接从输入缓冲区中读取字符,直到输入缓冲区为空才等待从键盘继续输入。一行上输入的所有字符一并送入缓冲区,输入完毕,getchar()函数从缓冲区读取一个字符,只要缓冲区还有剩余的字符,后面的getchar()函数就会直接从中读取。空格和回车符都属于字符,很有必要充分注意和掌握字符输入的特殊性及其输入方