c语言实验指导(修改)学生版
程序设计与算法语言实验指导一、目的和任务程序设计的学习在数学专业的教学中占有重要地位。 在建立数学模型后, 对模型的求解和检验中多数会需要借用程序执行来完成。 程序设计与算法语言实验课的目的就是通过实验培养并提高学生编写程序的能力和计算机应用的能力。实验通过一些实例的编程学习,培养学生面向问题时建立逻辑清晰的思想,练习应用 c 语言进行程序编写并执行,对问题中的各有关量进行分析,给出结果。二、实验环境计算机机房三、实验时数16 学时实验 1 选择结构程序设计实验目标:1、熟悉并掌握vc+6.0 开发环境;2、了解数据类型在程序设计语言中的意义;3、掌握 C 语言程序的顺序结构,并会编写、运行;4、理解并掌握if 语句和 switch 语句的执行流程;5、理解并掌握嵌套的选择结构的执行流程。实验内容:题目 1:从键盘输入一个任意大小的实数 x,如果 x 满足条件 -29.5<x<30 ,则输出 x 及其绝对值,否则只输出 x。题目 2:从键盘输入一个字符,如是小写字母,则输出“small” ,如是大写字母则输出“big ”,如是数字则输出“ number”,其他字符则输出“other”。题目 3:设计一个四则运算的计算器。如输入: 1+2<回车 >则输出: 1+2=3实验 2 循环结构程序设计实验目标:1、掌握实现循环结构的三种流程控制语句while 、 dowhile 、 for 的用法和执行过程;2、熟练掌握用循环方法实现几种常用算法。实验内容:题目 1:找出 100999 之间(含100 和 999)所有整数中各位上数字之和为x( x 为一正整数)的整数,然后输出。例如:当 x 的值为 5 时,100999 之间各位上数字之和为5 的整数有: 104、113、122、131、140、 203、212、221、230、 302、 311、320、401、 410、 500,共 15 个;当 x 的值为 27 时,100999 之间各位上数字之和为27 的整数有: 999,只有 1 个。题目 2:写出计算方程 f(x)=(x+3) 2-7 在( -3, 0)之间的实数根的程序。题目 3:给定程序的功能是:计算下式前n 项的和。例如, n的值为 10时,得到结果: 9.612558。 请在程序的下划线处填入正确的内容并把下划线删除 ,使程序得出正确的结果。注意:不得增行或删行,也不得更改程序的结构!#include<stdio.h>Voidmain()int n=-1;inti;doubles, t;while(n<0) printf("Please input(n>0): ");scanf("%d",&n);/*found*/s=【 1】 ;/*found*/for(i=1; i<= 【2】 ; i+) t=2.0*i;/*found*/s=s+(2.0*i-1)*(2.0*i+1)/【 3】 ;printf("nThe result is: %fn",s);实验 3 数组实验目标:1、掌握一维数组的定义、赋值和输入输出的方法;2、掌握字符数组的使用;3、掌握与数组有关的典型算法。实验内容:题目 1:输出以下的杨辉三角形11112113311464115101051。 。要求:输出10 行题目 2:已有一个已排好序的数组,今输入一个数,要求按原来排序的规律将它插入到数组中。如:原数组元素为:124679,则输入5 后插入到数组中形成新的序列:1245679要求:写出算法思路分析的过程。题目 3:折半查找。在有N 个元素的数组(元素由小到大的顺序存放)中,查找x 是否存在于该数组,如存在输出x 在数组中的下标,如不存在则输出“non-existent !”折半查找的基本思想说明:设查找数据的范围下限为low=0 ,上限为 hig=N-1 ,求中点 mid=( low+hig )/2,用 x 与中点元素(即mid 作为下标的元素)比较,若相等即找到,停止查找;否则,若x 大于中点元素,替换下限low=mid+1 ,到下半段继续查找;若x 小于中点元素,替换上限hig=mid-1 ,到上半段继续查找;具体事例如下图:情况 1)设要查找的数据x=5 ,则有:1low357mid91113hig由于mid为下标的值是7 ,大于x,则修改上限hig135791113Lowmidhig由于mid为下标的值是3 ,小于x,则修改下限low135791113higLowmid由于 mid 为下标的值是5,等于 x,则找到数据,结束查找。情况 2)设要查找的数据x=8 ,则有:135791113lowmidhig由于 mid 为下标的值是7 ,小于 x,则修改下限 low135791113lowmidhig由于 mid 为下标的值是11,大于 x,则修改上限 hig135791113higlowmid由于 mid 为下标的值是9,大于 x,则修改上限 hig135791113higlow由于上限 hig 小于下限low ,则表示没有找到,结束查找。实验 4 函数实验目标:1、掌握函数的定义和调用方法;2、掌握函数实参与形参的对应关系;3、理解和掌握数组作为函数参数的用法。实验内容:题目 1:执行以下程序,写出执行结果,并分析。题目 2:填写下述del 函数内容,功能是删除整型数组中指定的数。如:数组中的数为: 4、 8、 9、 7、 0、 1 要删除的数为9;删除后数组中的值为:4、 8、 7、0、 1要求:写出算法思路分析的过程。实验 5 指针实验目标:1、掌握有关指针的概念,会定义和使用指针变量;2、掌握指针和函数的关系;3、掌握指针和数组的关系。实验内容:题目 1:(1)执行下列程序,并分析运行结果( 2)试修改上程序,使得函数 fun能够交换主调函数 main 中a, b的值。题目 2:给定程序中,函数 fun的功能是:计算形参 x所指数组中 N个数的平均值(规定所有数均为正数) ,将所指数组中大于平均值的数据移至数组的前部,小于等于平均值的数据移至x所指数组的后部,平均值作为函数值返回,在主函数中输出平均值和移动后的数据。例如,有 10个正数: 4630324061745154826,平均值为: 30.500000移动后的输出为:4632404548306171526请在程序的 下划线处填入正确的内容并把下划线删除, 使程序得出正确的结果。注意:不得对源程序增行或删行,也不得更改程序的结构!题目 3:函数 fun的功能是:将 a、 b中的两个两位正整数合并形成一个新的整数放在 c中。合并的方式是: 将 a中的十位和个位数依次放在变量 c的十位和千位上, b中的十位和个位数依次放在变量c的个位和百位上。例如,当 a 45, b=12。调用该函数后,c=5241。注意 : 请勿改动主函数 main和其它函数中的任何内容,仅在函数 fun的花括号中填入你编写的若干语句。实验 6 结构体实验目标:掌握结构体类型变量的定义和使用;通过该实验把 C 语言中的几个主要知识(如:顺序结构、选择结构、循环结构、数组、函数等)得到综合应用。实验内容:题目:建立一个简单的学生成绩管理系统。具体功能如下:( 1)录入学生信息的功能。每个学生的数据包括学号、姓名、四门课的成绩。( 2)打印学生信息的功能。( 3)计算学生平均成绩的功能。程序设计与算法语言实验报告专业班级姓名学号实验项目实验一选择结构程序设计实验目的1、熟悉 if、 switch 语句形式。2、掌握程序设计的基本方法。3、学会简单的选择结构程序设计方法。实验内容题目 1:从键盘输入一个任意