《C程序设计》指导书_第1页
《C程序设计》指导书_第2页
《C程序设计》指导书_第3页
《C程序设计》指导书_第4页
《C程序设计》指导书_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

C程序设计实验大纲及其实施计划课程综述C程序设计是计算机科学与技术(师范类)专业的一门专业基础课,属于专业必修课。是本专业的多门后续专业课程的先导课。本课程的教学目的是使学生掌握有关C程序设计的基本概念、基本结构、基本方法与技巧,具备利用C语言进行程序设计的基本素质,拥有用C语言编写程序和上机调试的能力,为本专业有关后续课程的学习打下坚实的基础。实验设置总体说明C程序设计是一门实践性很强的课程。通过实验使学生加深对课堂讲授的概念、语法、算法、编程技术的理解;熟悉C程序设计的开发环境;掌握程序设计和调试的基本技能。并通过实践激发学生进一步学习的积极性,培养学生的学习兴趣和创新思维。通过8个实验,使学生经过一定数量的上机训练,了解和掌握C程序设计的环境、程序的数据表示、程序的执行流程控制、程序的整体结构等C程序设计的基本概念和应用技术。实验名称(选做实验后面加*号)1C语言编程环境、简单C程序实验2选择结构实验3循环结构实验4数组实验5函数实验6指针实验7结构体实验8文件实验实验占课程总课时、学分比例情况实验占课程总课时1/2,实验成绩与平时作业合计占课程成绩的30%。实验资料存档形式(纸质/光盘)光盘实验 1 C语言编程环境、简单C程序实验实验目的:熟悉Turbo C编程环境,了解和掌握利用该环境对C程序进行编辑、编译和运行的基本方法和步骤。学习使用C语言的基本类型、基本运算符和表达式,初步掌握各类基本数据的输入输出方法。实验环境(硬/软件要求): Windows XP + VC+6.0实验内容:1. VC+6.0启动。2. 初步了解和掌握VC+6.0集成环境的主要功能3. 数据类型、运算符和表达式4. 简单C程序的调试实验主要步骤:1安装VC+6.0,若你所在的计算机上已经安装VC+6.0,则查看并记录其安装的位置。练习如何进入VC+6.0环境。2结合教材第3章习题3.6和习题3.10的练习,学习VC+6.0集成环境的主要功能的使用:(1)如何新建一个C源程序(2)如何保存正在编辑的C源程序(3)如何打开先前保存的C源程序(4)如何以新的文件名保存正在编辑的C源程序(5)如何编译C源程序(6)如何运行编译好了的C程序(7)退出C语言编程环境。3完成教材第3章习题3.6、习题3.10和习题4.6的上机调试。实验报告主要内容:1简要描述VC+6.0的安装过程,若你所在的计算机上已经安装VC+6.0,则记录其安装的位置(盘符和所在目录)。描述如何启动VC+6.0。(10分)2简要地描述在VC+6.0集成环境下调试C程序的过程(即根据上面“实验主要步骤”第2点中的7个小问题,通过实验逐个记录它们操作过程)(35分)3通过调试教材习题3.6、习题3.10、习题4.6的程序,谈谈你对下列概念的理解:(1)C语言中的变量与常量的主要区别在哪里?(15分)(2)C语言表达式与通常的数学式子一样吗?、C语言表达式的主要功能是什么?(10分)(3)你对赋值语句的执行过程是如何理解的?赋值语句的功能是什么?(10分)(4)利用scanf输入数据时要特别注意哪些问题(20分)实验 2 选择结构实验实验目的:正确掌握逻辑量、关系表达式、逻辑表达式;熟练掌握if语句和switch语句;结合程序掌握一些简单的算法;学习如何调试C程序。实验环境(硬/软件要求): Windows XP + VC+6.0实验内容:要求事先编好解决下面问题的程序,然后上机输入程序并调试运行程序。1、 给定三个数a,b,c,求出其中的最大值。要求:(1)使用条件语句if实现。 (2)使用嵌套条件语句if实现。 (3)输入不同的三组数据,验证程序的正确性。2、 输入一个整数,判断它是否能被3整除:若能被3整除,输出YES,否则输出NO。 要求:(1)使用ifelse语句来实现 (2)调试程序并验证程序的正确性。3、 输入一个字符,如是“a”或“A”,输出“Abort”,如是“r”或“R”输出“Retry”,如是“f”或“F”,输出“Fail”。否则,给出出错信息。要求:(1)用switch语句完成。(2)调试程序并验证程序的正确性实验主要步骤:1. 输入源代码。2. 调试程序。3. 输入不同的数据验证程序的正确性。实验报告主要内容:1程序清单(70分)2运行结果(15分)3谈谈你在使用if或switch语句编写程序和调试程序的过程中一些经验和体会(15分)实验 3 循环结构实验实验目的:1. 熟练掌握用while语句,do-while语句和for语句实现循环的方法。2. 结合循环程序设计掌握一些简单算法。3. 进一步学习调试程序的方法和技巧。实验环境(硬/软件要求): Windows XP + VC+6.0实验内容:要求事先编好解决下面问题的程序,然后上机输入程序并调试运行程序。1、从键盘上读入一串字符,分别统计其中数字、字母和其他字符出现的次数。要求:(1) 用while循环完成。 (2) 调试程序并验证程序的正确性。2、计算 sin(x)=x-x3/3!+x5/5!-x7/7!+.直到最后一项的绝对值小于10-7 。要求:(1) 用do-while 完成。 (2) 调试程序并验证程序的正确性。3、输入一个整数,求100以内的整数中能被该整数整除的最大数。要求:(1) 使用break和for循环完成。 (2) 调试程序并验证程序的正确性。4、输入两个数,输出这两个数之间所有不能被7整除的数。要求:(1) 使用continue和for循环完成。 (2) 调试程序并验证程序的正确性。5、使用双重循环输出下面图形:* * * *要求:1、用for循环完成。 2、调试程序并验证程序的正确性。实验主要步骤:1. 输入源代码。2. 调试程序。3. 输入不同的数据验证程序的正确性。实验报告主要内容:1程序清单(70分)2运行结果(15分)3谈谈你在使用while、 do-while或for语句编写程序和调试程序的过程中一些经验和体会(15分)实验 4 数组实验实验目的:1掌握一维数组和二维数组的定义、赋值和输入输出的方法。2掌握字符数组和字符串函数的使用。3掌握与数组有关的算法(特别是排序算法)。实验环境(硬/软件要求): Windows XP + VC+6.0实验内容:要求事先编好解决下面问题的程序,然后上机输入程序并调试运行程序。1、输入十个数据,输出其中的最大值。要求:(1)用一维数组完成 (2)调试程序并验证程序的正确性。2、输入某班级30名学生外语考试的个人成绩,并计算它们的平均成绩。要求:(1) 用一维数组完成 (2) 调试程序并验证程序的正确性。3、求下列两个矩阵的和:1 2 3 4 1 3 5 7 5 6 7 8 9 11 13 159 10 11 12 17 19 21 23要求:(1)用二维数组完成 (2)调试程序并验证程序的正确性。4、 编程输出如下图形* * * * * * * * * * * * * * * * * * * * * *要求:(1)用字符数组完成 (2)调试程序并验证程序的正确性。实验主要步骤:1输入源代码。2调试程序。3用scanf函数输入不同的数据验证程序的正确性。实验报告主要内容:1程序清单(60分)2分析运行结果(20分)3通过编写调试程序谈谈双种循环在二维数组中的应用;在编写程序的过程中你遇到了哪些困难,又是如何解决的。(20分)实验 5 函数实验实验目的:1掌握定义函数的方法。2掌握函数实参与形参的对应关系以及“值传递”的方式。3掌握函数的嵌套调用和递归调用的方法。4掌握全局变量和局部变量动态变量、静态变量的概念和使用方法。5学习对多文件程序的编译和运行。实验环境(硬/软件要求): Windows XP + VC+6.0实验内容:要求事先编好解决下面问题的程序,然后上机输入程序并调试运行程序。1、 编写函数isprime(int a)用来判断参数a是否为素数,若是素数,函数返回值为1,否则返回值为0。要求:(1)在主函数中调用输出。 (2)调试程序并验证程序的正确性2、 编写函数upper1(ch),若ch为小写字母,转换为大写字母并作为函数值返回。其他字母不变,用字符结束输入。要求:(1)在主函数中调用 (2)调试程序并验证程序的正确性3、 编写一个程序计算下列函数值f(x,y)= 其中s(n)=p(1)+p(2)+p(n), p(i)=i!要求:(1)为函数p(i)、s(n)、f(x,y)均编写一个用户函数。x,y由主函数输入。 (2)调试程序并验证程序的正确性4、 编写函数计算输出s(n)的值,其中n由键盘输入。S(n)=12+22+n2 要求:(1)用递归方法计算s(n);在主函数中调用。 (2)调试程序并验证程序的正确性提示:递归计算公式:s(n)=s(n-1)+n*n, 递归结束条件:s(1)=1*1=1实验主要步骤:1输入源代码。2调试程序。3输入不同的数据验证程序的正确性。实验报告主要内容:1程序清单(60分)2分析运行结果(20分)3通过编写调试程序谈谈你对参数传递、函数的嵌套调用与递归调用的理解;说说函数定义与函数声明的区别;在编写程序的过程中你遇到了那些困难,又是如何解决的。(20分)实验 6 指针实验实验目的:通过实验进一步正确理解指针变量和地址的概念,掌握指针变量的赋值、运算,以及通过指针引用变量的方法;理解数组名与地址值之间的关系,能正确使用字符串指针和指向字符串的指针变量。实验环境(硬/软件要求): Windows XP + VC+6.0实验内容:使用指针的方法,事先编好解决下面问题的程序,然后上机输入程序并调试运行程序。1利用指针编写一个自己的求字符串长度的函数: int lenth(char * str) 并通过主函数调用、验证lenth()函数。2利用指针编写一个函数:char * substr(char *s,int start, int count)它将字符串s中第start个字符开始的count个字符组成的子字符串作为函数值(若start的值超过了字符串s的长度,则函数值定义为空串;从start到s的末尾的字符不足count个,则以从start到s的末尾的子字符串作为函数值)。再在main()函数中三次以不同的实际字符串参数调用substr()以验证其正确性。3利用指针编写程序,完成对输入的一系列英语单词进行排序(如将10个随意输入的英语单词按字典序排序)后输出。实验主要步骤:1. 输入源代码。2. 输入数据,调试程序。3. 分析程序的运行结果,检查程序的正确性。实验报告主要内容:1程序清单(60分)2分析运行结果(20分)3谈谈你在使用指针编写和调试程序的过程中经验和体会(使用指针的优点和技巧;使用指针特别应该注意的地方等)(20分)。实验 7 结构体实验实验目的:掌握结构体类型说明和结构体类型变量、数组、指针的定义方法,能够正确引用结构体成员;掌握给结构体变量、数组初始化的方法;理解和掌握结构体数组并应用于实际编程之中。实验环境(硬/软件要求): Windows XP + VC+6.0实验内容:要求事先编好解决下面问题的程序,然后上机输入程序并调试运行程序。1. 某实验班有10名学生,每个学生的数据包括学号、姓名及3门课程的成绩。编写程序完成下列任务:(1) 从键盘输入10个学生的所有基本数据(注意各项数据的类型与输入格式控制,输入时要特别小心不要遗漏或错位,以免全部数据都重新输入)(2) 计算出每个学生3门课程的总成绩(3) 计算出每门课程的全班平均成绩(4) 按以下示意的格式输出计算结果(其中的黑体表示是程序计算出来的,其余数据是键盘输入的,实际输出时不强求黑体):No. Name Score1 Score2 Score3 Total0504001 Zhang 90 89 91 2700504002 Li 91 78 67 2360504003 Wang 67 60 78 205 0504003 Zhu 68 58 75 201Average CLASS 87 79 812调试程序,验证程序的正确性。实验主要步骤:1. 输入源代码。2. 输入数据,调试程序。3. 分析程序的运行结果,检查程序的正确性。实验报告主要内容:1程序清单(60分)2分析运行结果(20分)3谈谈你在使用结构体建立学生基本信息模型、编写程序和调试程序的过程中经验和体会,对这类调试时需要大量数据输入的程序,你有什么可以降低数据输入工作量的想法和建议(20分)。实验 8 文件实验实验目的:了解文件的概念,掌握在C语言打开、读写、关闭文件的基本方法和步骤,并能够应用于涉及大量数据输入(或有大量需要保存的数据输出)的程序设计之中。实验环境(硬/软件要求): Windows XP + VC+6.0实验内容:要求事先编好解决下面问题的程序,然后上机输入程序并调试运行程序。1.建立下列学生姓名及4门课程成绩的输入数据文件inData.txt:zhang 90 89 91 90li 91 78 67 78wang 67 60 78 68tan 100 99 94 97lin 84 67 59 702. 编写C程序完成下列任务:(1) 从inData.txt读入数据(2) 计算出每个学生的平均成绩(3) 将结果以下列形式输出到文本文件outData.txt中:Name Math Chinese English Science Averagezhang 90 89 91 90 90li 91 78 67 78 79wa

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论