C语言实验指导.doc
C语言实验指导(要求认真填写实验报告中的各项内容,不得空白或填写未发现问题)实验一 顺序结构程序设计实验二 选择结构程序设计实验三 循环结构程序设计实验四 一维数组及其应用实验五 二维数组与字符数组实验六 函数的定义及调用实验七 变量的作用域与预处理命令实验八 指针及其应用实验九 指针与数组实验十 结构体及其应用实验十一 文件基本操作实验十二 综合实验必做2,3,4,5,6,8,12 其余选做实验一 顺序结构程序设计一、实验目的掌握顺序程序设计的基本思想和顺序程序设计的基本方法二、实验要求1仔细阅读下列实验内容,并编写出相应的C语言源程序。2在VC运行环境下,编辑录入源程序。3调试运行源程序,并记录下调试运行过程中出现的所有错误及改正方法。4掌握如何根据出错信息查找语法错误。5掌握如何通过动态跟踪程序运行过程查找逻辑错误。6. 写出本次实验的实验报告。三、实验内容1已知方程ax2bxc0的系数值(设b2-4ac0),求方程的根并输出。2从键盘输入一个小写字母,将其转化为相应的大写字母并输出。 实验二 选择结构程序设计一、实验目的1熟练掌握C中选择结构语句if语句的使用。2熟练掌握C中用switch语句来实现选择结构。3编写能够实现下列要求的程序并上机调试通过二、实验要求(1)在VC环境中输入顺序程序设计的源代码(2)把源程序代码和运行结果写在实验报告上三、实验内容1从键盘输入三个整数,求出最大数并输出。2从键盘输入一个字符,若为小写字母,则转化为相应的大写字母;若为大写字母,则转化为相应的小写字母;否则转化为ASCII码表中的下一个字符。3从键盘输入两个整数及一个运算符,分别求出其和差积商并输出(其中运算符在两个整数之间输入)。(选做) 实验三 循环结构程序设计一、实验目的1加深对循环结构程序设计内容的理解,尤其是一些语法规定。2熟悉掌握用while语句,do-while语句和for语句实现循环的方法。注意三者之间的不同、以及相互代替的条件。二、实验要求1复习和掌握用for语句,while语句,do-while语句实现循环相关联的教学内容2编写好上机所需要调试的程序。手编程序应书写整齐,检查无误才能上机,以提高实验效率。程序一定要自己编写、自己动手调试,才能达到实验的目的。3对程序中可能出现的问题应事先作出估计;对疑问的地方,应做出记号,调试时重点关注。4准备好调试和运行时所需的典型的、有代表性的数据。5熟悉、熟练掌握VC 集成环境的上机过程,常见的错误能自行处理。6实验后,应整理出实验报告.三、实验内容1求1-1/31/5-1/7.1/97-1/99之和并输出。2求出100之内的全部素数并输出。3求159.21之和并输出。(选做) 实验四 一维数组及其应用一、实验目的1. 掌握数组的定义、赋值和输入输出的方法。2. 学习用数组实现相关的算法(如排序、求最大和最小值、对有序数组的插入等)。3. 熟悉VC集成环境的调试数组的方法。二、实验要求 1复习数组的定义、引用和相关算法的程序设计。2编写程序,运行程序并记录运行结果。3将源程序、目标文件、可执行文件和实验报告存在软盘、优盘或邮箱。三、实验内容 1从键盘输入10个数,用起泡法按升序排序并输出。 2编程实现,从键盘输入10个整数,用一维数组存储,求其中最大值及其下标并输出。 3从键盘输入11个数存入一维数组中,将其中的值前后倒置后重新存入该数组中并输出。(选做) 实验五 二维数组与字符数组一、实验目的 1.掌握二维数组的定义,赋值和输入输出的方法。 2.掌握与数组有关的算法如排序算法等算法。 3.掌握字符数组的定义,赋值和输入输出的方法。 4.掌握字符数组和字符串函数的使用。二、实验要求 1复习数组的定义、引用和相关算法的程序设计。2编写程序,运行程序并记录运行结果。3将源程序、目标文件、可执行文件和实验报告存在软盘、优盘或邮箱。三、实验内容 1从键盘输入5个学生4门课程的成绩,求每个人的总分与平均分。 2从键盘输入一个字符串存入数组a中,再将a的内容前后倒置后重新存入数组a中并输出。 3从键盘上输入10个字符串,用二维字符数组存储,输出其中最大与最小字符串。(选做) 实验六 函数的定义及调用一、实验目的与要求 掌握定义函数的方法; 掌握函数实参与形参的对应关系以及“值传递”的方式;二、实验内容(1)编写求k的函数,再调用该函数求Cm,nm/n *m-n并输出。(2)编写判断素数的函数,再调用该函数求出1000以内的所有素数。 实验七 变量的作用域与预处理命令一、实验目的与要求(1)掌握全局变量和局部变量的概念和使用方法;(2)掌握动态变量和静态变量的概念和使用方法。(3)掌握宏定义的方法二、实验内容(1)编写求两个整数最大公约数的函数,并调用此函数求两个整数的最大公约数。要求用全局变量传回最大公约数。(2)定义一个求三个数中最大数的带参数的宏,并在程序中调用。(3)编写字符串复制的函数,并调用此函数复制一个字符串。(选做) 实验八 指针及其应用一、实验目的1.掌握指针和指针变量,内存单元和地址、变量与地址、数组与地址的关系。2.掌握指针变量的定义和初始化,指针变量的引用方式。3.掌握取地址运算符与指针运算符。4.掌握指向变量的指针变量的使用。5.掌握指向数组的指针变量的简单使用。二实验要求1.仔细阅读下列实验内容,并编写出相应的C语言源程序。2.在VC运行环境下,编辑录入源程序。3.调试运行源程序,并记录下调试运行过程中出现的所有错误及改正方法。4.掌握如何根据出错信息查找语法错误。5.掌握如何通过动态跟踪程序运行过程查找逻辑错误。6.写出本次实验的实验报告。三、实验内容1用间接引用将三个数按升序排序并输出。2编写交换两个变量值的函数,并调用该函数交换主函数中两个变量的值(不能使用全局变量传递数据)。3编写求三个数中最大数的函数,并调用该函数求出主函数中三个数中的最大数(不能使用全局变量或return语句传递数据)。(选做) 实验九 指针与数组一、实验目的1正确使用指针操作字符串。2正确使用指针操作数组元素。二实验要求1.仔细阅读下列实验内容。2.在VC运行环境下,编辑录入源程序。3.调试运行源程序,并记录下调试运行过程中出现的所有错误及改正方法。4.掌握如何根据出错信息查找语法错误。5.掌握如何通过动态跟踪程序运行过程查找逻辑错误。6.写出本次实验的实验报告。三、实验内容1. 从键盘输入十个整数存入一维数组中,求出它们的和及平均值并输出(要求用指针访问数组元素)。2. 从键盘输入一个字符串存入数组a中,再将a的内容前后倒置后重新存入数组a中并输出(要求用指针访问数组元素)。 实验十 结构体及其应用一、实验目的1掌握结构体类型和结构体变量的定义方法,掌握结构类型变量的输入、输出和赋值。2掌握结构体数组及结构体指针的定义方法及引用方法。二、实验要求1仔细阅读下列实验内容,并编写出相应的C语言源程序。2在VC运行环境下,编辑录入源程序。3调试运行源程序,并记录下调试运行过程中出现的所有错误及改正方法。4掌握如何根据出错信息查找语法错误。5掌握如何通过动态跟踪程序运行过程查找逻辑错误。6写出本次实验的实验报告。三、实验内容1设学生的信息包括学号、姓名和成绩三项数据,试编写程序从键盘输入一个学生的数据,存入到结构体变量中,最后再输出该学生的各项数据。2设有六个学生,每个学生的数据包括学号、姓名、成绩,试用结构体数组编写程序,实现从键盘输入六个学生的数据,找出成绩最高者并输出其学号、姓名和成绩。 实验十一 文件基本操作一、实验目的 1掌握文件和文件指针的概念以及文件的定义方法。2学会使用函数打开文件、使用fclose函数关闭文件。3了解fscanf函数和fprintf函数函数使用方法。二、实验要求1写出源程序。2上机调试直至得到正确的输出结果。三、实验内容1建立一个文本文件file1.txt,将字符ABCDEF写入文件。2从文件file1.txt中读出字符,转为小写后在屏幕上输出。 实验十二 综合实验 综合实验见http210.44.185.38/download/C12.doc