C语言上机实验(16)
- 格式:doc
- 大小:101.00 KB
- 文档页数:13
实验一上机操作初步(2学时)一、实验方式:一人一机二、实验目的:1、了解C语言程序的特点与基本结构。
2、了解C语言程序的编译环境。
3、掌握使用C语言编写和调试程序的流程:编辑-保存-编译-构建(组件)-执行。
4、掌握C语言程序在Visual C++ 6.0环境下的调试过程。
5、初步了解C程序的特点。
三、实验内容:说明:前三题为必做题目,第四题为选做题目。
1、编辑实验教材P2程序,掌握C语言程序在Visual C++6.0环境下的编译流程和调试过程。
(实验教材P2)2、在屏幕上实现下列图案的输出:****************************hello,welcome to china!good bye!**************************** (实验教材P11)3、计算两个数x和y的和。
(教材P5【例1-2】)4、求两个数的最大值。
(教材P5【例1-3】)四、实验步骤与过程:1、#include "stdio.h"void main( ){printf("Hello,World!");printf("\n");}2、五、实验调试记录:1、2、实验二简单的C程序设计(2学时)一、实验方式:一人一机二、实验目的:1、掌握C语言的数据类型。
2、掌握标识符、常量、变量的定义及使用。
3、掌握C语言的常用运算符及表达式。
三、实验内容:说明:前四题为必做题目,第五题为选做题目。
1、从键盘输入华氏温度h,输出摄氏温度c(摄氏温度=5/9*(华氏温度-32))。
(实验教材P18)2、给定圆环,输入内圆环半径r1、外圆环半径r2,求出圆环的面积。
(实验教材P27)3、从键盘上输入两个整数x、y,实现两个数的交换,并求出最大值、最小值和两个数的平均值。
(实验教材P21)4、输入并运行以下程序,分析运行结果。
(实验教材P27)#include “stdio.h”void main( ){ int i,j;i=8; j=10;printf(“%d,%d\n”,++i,++j);i=8; j=10;printf(“%d,%d\n”,i++,j++);i=8; j=10;printf(“%d,%d\n”,++i,i);i=8; j=10;printf(“%d,%d\n”,i++,i);}5、从键盘上输入3个数a、b、c,求一元二次方程的解x1、x2,并分别把这两个解的绝对值作为圆柱的半径与高,计算圆柱的体积。
(实验教材P20)四、实验步骤与过程:五、实验调试记录:一、实验方式:一人一机二、实验目的:1、掌握单分支if语句的使用方法。
2、掌握双分支if-else语句的使用方法。
3、掌握多分支语句的一般形式和使用方法。
三、实验内容:说明:前四题为必做题目,第五题为选做题目。
1、从键盘输入一个3位整数,请输出该数的逆序数。
(实验教材P27)2、输入3个字符型数据,将其转换成相应的整数后,求它们的平均值并输出。
(实验教材P27)3、判断箱子是正方体还是长方体。
请根据注释将程序填写完整。
(实验教材P33)4、编写程序,通过输入x的值,计算阶跃函数y的值。
(教材P70【例5-4】)-1 x<0y= 0 x=01 x>05、有一函数: x (x<1)y= 2x-1 (1≤x<10)3x-11 (x≥10) 编写程序,输入x值,输出y值。
四、实验步骤与过程:五、实验调试记录:实验四选择结构程序设计(二)(2学时)一、实验方式:一人一机二、实验目的:1、掌握循环嵌套的使用方法。
2、掌握switch语句的一般形式和使用方法,结合break语句解决生活中的问题。
3、学习调试和修改程序。
三、实验内容:1、定义4个实型变量a、b、c、d,利用单分支if语句对其进行排序,最后将结果输出。
(实验教材P33)2、编写程序,从键盘上输入某一年月,判断这年的这个月份有多少天。
(教材P75【例5-6】)3、编写程序,对于给定的学生百分制成绩,分别输出等级‘A’,‘B’,‘C’,‘D’,‘E’,其中90分以上为‘A’,80~89分为‘B’,70~79分为‘C’,60~69分为‘D’,60分以下为‘E’。
(要求分别使用switch和if 语句实现)(实验教材P123)4、编写程序,从键盘上输入一个字符,如果该字符是小写字母,则转换成大写字母输出;如果是大写字母,则转换成小写字母输出;如果是其他字符,原样输出。
(实验教材P124)四、实验步骤与过程:五、实验调试记录:实验五:循环结构程序设计(一)一、实验方式:一人一机二、实验目的:1、掌握while、do-while、for语句实现循环的方法。
2、了解3种循环语句的区别和转换。
3、掌握在程序设计中用循环的方法实现各种算法。
三、实验内容:说明:前三题为必做题目,第四题为选做题目。
1、从键盘上连续输入多个学生成绩分数(0-100),编写程序统计学生最高、最低和平均成绩。
(实验教材P40)2、编写程序输出所有水仙花数,并统计水仙花数的个数,其中水仙花数是一个3位数的自然数,该数各位数的立方和等于该数本身。
(实验教材P42)3、编写程序,计算数列1235813,,,,,,…,计算数列的前20项的和。
(实验教23581321材P46)4、编写程序,从键盘上输入正整数m,判断m是否为质数。
(教材P98【例6-12】)四、实验步骤与过程:五、实验调试记录:实验六:循环结构程序设计(二)一、实验方式:一人一机二、实验目的:1、掌握循环嵌套的使用。
2、掌握如何在循环语句中使用循环控制语句break和continue,改变程序流程。
3、掌握在程序设计中用循环的方法实现各种算法。
三、实验内容:说明:前三题为必做题目,第四题为选做题目。
1、编写程序,计算圆周率π,其中π/4=1-1/3+1/5-1/7+……,直到某一项的绝对值小于10-6为止。
(教材P86【例6-4】)2、编写一个程序,求数列1!-3!+5!-7!+……+(-1)n-1(2n-1)!,n的值由键盘录入。
(实验教材P43)3、使用for循环语句,打印以下二维图案。
(实验教材P44)*************************4、编写程序实现“百马百担”问题。
有100匹马,要驮100担货物,其中1匹大马可以驮3担,1匹中马可以驮2担,2匹小马可以驮1担,请问大马、中马和小马可以有多少种组合。
(实验教材P47)四、实验步骤与过程:五、实验调试记录:实验七:数组程序设计(一)一、实验方式:一人一机二、实验目的:1、掌握一维数组和二维数组的定义和数组元素的引用方法。
2、了解一维数组和二维数组初始化方法。
3、学习一维数组和二维数组的基本算法。
三、实验内容:说明:前三题为必做题目,第四题为选做题目。
1、下列程序的功能是:输入10个整数,按每行3个数输出这些整数,最后输出10个整数的平均值。
程序中有几处错误,试找出它们后加以修改,并上机验证修改结果。
#include <stdio.h>void main( ){ int i,n,a[10],avg;for(i=0;i<n;i++)scanf(“%d”,a[i]);for(i=0;i<n;i++){ if(i%3==0) printf(“\n”);printf(“%d ”,a[i]);}for(i=0;i<n;i++)avg+=a[i];printf(“\navg=%f\n”,avg);}2、从键盘上读入10个整数存入数组a,找出数组a中的数的最大值,并计算数组a中所有数组元素的平均值。
(教材P112【例7-4】)3、编写程序,将数组中的值逆序存放。
如原来的顺序为1,2,3,4,5,6,7,8,9,10,要求改为:10,9,8,7,6,5,4,3,2,1。
(实验教材P60)4、从键盘上输入10个整数,然后按照从小到大的顺序把这10个数排序并输出到屏幕上。
(教材P114【例7-6】)四、实验步骤与过程:五、实验调试记录:实验八:数组程序设计(二)一、实验方式:一人一机二、实验目的:1、掌握字符数组的定义,初始化及其元素的引用方法。
2、掌握C语言提供的对字符串进行处理的基本库函数。
3、学习用数组实现相关的算法(特别是排序算法)。
三、实验内容:说明:前三题为必做题目,第四题为选做题目。
1、编写程序,计算Fibonacci数列,并输出前20项,每行5项。
(实验教材P130)2、计算一个4×4矩阵的对角线元素之和。
(实验教材P55)3、判断某一字符串是不是“回文数”,回文数是从左至右或从右至左读起来都是一样的字符串。
(实验教材P56)4、编写程序,实现字符串测试长度函数strlen的功能。
(实验教材P60)四、实验步骤与过程:五、实验调试记录:实验九:函数程序设计(一)一、实验方式:一人一机二、实验目的:1、掌握函数的定义方法。
2、掌握函数的调用方法,及参数之间传递数据的规则。
3、掌握函数的声明方法。
三、实验内容:说明:前三题为必做题目,第四题为选做题目。
1、从键盘输入三角形的3条边,调用三角形面积函数求出其面积,并输出结果。
2、编写一个函数,当输入整数n后,输出高度为n的等边三角形。
当n=4时的等边三角形如下:*************** (实验教材P136)3、数组中存放了一个学生5门课程的成绩,求平均成绩。
(教材P144【例8-7】)4、编写函数power( )实现计算x的n次方,其中变量t用于存放计算结果,要注意变量t的数据类型不能为int类型,应为double类型。
(实验教材P68)四、实验步骤与过程:五、实验调试记录:实验十:函数程序设计(二)一、实验方式:一人一机二、实验目的:1、练习嵌套调用和递归调用的设计方法。
2、掌握局部变量、全局变量、静态变量的概念和使用方法。
3、理解内部函数和外部函数的概念,了解外部函数的编译和链接的方法。
三、实验内容:说明:前三题为必做题目,第四题为选做题目。
1、编写一个函数,用冒泡法对输入的10个整数进行排序(按升序排序)。
(实验教材P134)2、输入并运行以下程序,分析运行结果。
#include "stdio.h"int a=5;int b=7;void main( ){ int a=4,b=5,c;c=plus(a,b);printf(“a+b=%d\n”,c);}int plus(int x,int y){ int z;z=x+y;return (z);}#include "stdio.h"int d=1;int f(int p){ static int d=5;d+=p;printf(“%d ”,d);return (d);}void main( ){ int a=3;printf(“%d ”,f(a+f(d)));}4、有两个数组a和b,各有10个元素,分别统计出两个数组中对应元素大于(a[i]>b[i])、等于(a[i]=b[i])、小于(a[i]<b[i])的次数。