版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、韶关学院 机制专业 C语言程序设计 实验说 明1、 所有同学必须参加实验课,按照排定顺序上机。2、 每次上机请固定机位,一人一机。3、 本课程9次上机实验 (全部实验需要提交电子版实验报告,如果课堂上没有完成实验报告,可以课下完成,并于下次上机时提交)文件夹命名为“学号的最后两位+姓名(实验*)”,例如:01李明(实验1)。4、 在机房内务必保持安静,不得大声喧哗,不得从事与实验无关事项,如打游戏、看电影等。5、写好预习报告: 针对实验内容要求用自己的语言简要的写明实验目的、实验原理,并针对实验内容预先做好程序的编写。所有实验项目必须提前编写程序!不写预习报告不得参加实验!6、数据记录记录实验
2、的原始数据,拒绝抄袭。7、实验内容 总结所做实验的内容 回答有关思考题 2016、3实验一 C语言运行环境一、目的和要求1、熟悉使用C语言运行环境。2、掌握语言程序的书写格式和语言程序的结构。3、掌握C语言上机步骤,了解运行一个C程序的方法。二、实验内容要求:编辑下面源程序,并且读懂与分析运行程序,上机运行程序,并与分析结果相对比。学会使用TC运行程序的基本方法。1. 输入并运行以下程序,观察运行结果。# include <stdio.h>int main() printf("*n"); printf(" very good!n"); pri
3、ntf("*n"); return 0; 分析结果 运行结果 2输入并运行以下程序,观察运行结果。 # include <stdio.h>int main() int a,b,sum,minus; a=123;b=456; sum=a+b; minus=a-b;printf("a+b=%dna-b=%dn",sum,minus); return 0; 分析结果printf中删除a+b=和a-b=输出结果:printf中删除第一个n输出结果:运行结果printf中删除a+b=和a-b=输出结果:printf中删除第一个n输出
4、结果:3.完成程序要求:依据题目要求,分析已给出的语句,填写空白。但是不要增行或删行,改动程序的结构。(1)求(a+b)×c的值。(设a=3,b=2,c=1)# include <stdio.h>int main( ) int a,b,c;a=3; c=1; printf("%dn",(a+b)*c); return 0; (2)求圆的面积。#include <stdio.h>#define PI 3.14int main( ) float r,area;printf("n Enter r value:");s
5、canf("%f",&r);area=PI*r*r;printf(" n area=%fn", ); return 0;4.调试程序要求:调试运行下列程序是否正确,若有错,写出错在何处?填写正确的运行结果。行号 #include <stdio.h>1. int main( )2. int x;3. x=5,y=8;4. printf("n%d,%d,%dn",x,(x+5)*2,y); 5. return 0;6. 错错误在 行 应改为:调试正确后的运行结果输出结果: 5.编写程序(1)编写程序输出用6颗
6、星构成的等边三角形。* * * * * *(2).编写一个C程序,输入a,b,c三个值,输出其中最大者。三、分析与讨论、记下在调试过程中所发现的错误、系统给出的出错信息和对策。分析讨论对策成功或失败的原因。、总结程序的结构和书写规则。实验二 数据的存储与运算一、实验目的1掌握C语言数据类型,熟悉如何定义一个变量以及对他们的赋值方法。2学会编写简单的程序,初步掌握编程的思路。3. 学习怎样发现程序中的错误并改正,使之能正常运行。4. 进一步熟悉C程序的编辑、编译、连接和运行过程。二、实验内容(一)阅读程序1. 输入并运行以下程序,观察运行结果。#include <stdio.h>in
7、t main() char c1,c2; c1=97;c2=98; printf("%c,%cn",c1,c2); return 0;(1)在第五行后面加入以下printf语句,并运行。printf("%d,%dn",c1,c2);分析结果 运行结果 (2)在(1)的基础上,将第三行改为以下语句,并运行。 int c1,c2;分析结果 运行结果 (3)在(1)的基础上,将第四行改为以下语句,并运行。 c1=321;c2=400;分析结果 运行结果 2. 分析并运行此程序,当输入的数据为10时
8、,下面程序的运行结果。#include <stdio.h>int main() float x,y; scanf("%f",&x); printf("n2.4*x-1/2=%f",2.4*x-1.0/2); printf("nx%2/5-x=%f",(int)(x)%2/5-x); printf("n(x-=x*10,x/=10)=%dn",(x-=x*10,x/=10); return 0;分析结果 运行结果 3.分析以下程序运行的结果#include <stdio.
9、h>int main() int i,j,m,n ; i=8;j=10; m=+i; n=j+; printf("%d,%d,%d,%dn",i,j,m,n); return 0; 分析结果 运行结果 (2) 将第6、7行改为:m=i+; n=+j;分析结果 运行结果 (3)程序改为:#include <stdio.h>int main() int i , j , m=0 , n=0 ; i=8; j=10; m+=i+; n-=-j; printf(“%d,%d,%d,%dn”,i,j,m,n); ret
10、urn 0;分析结果 运行结果 (二)完成程序要求:依据题目要求,分析已给出的语句,填写空白。但是不要增行或删行,改动程序的结构。1求任意输入字符的ASC码。#include <stdio.h>int main( ) ;/变量的定义printf(“请输入一个字符:”);scanf(“%c”,&a);b=(int)a;printf(“nn%c的ASC码为%dn”,a,b); return 0; 2、输出任意一个十进制数对应的八进制,十六进制数。#include<stdio.h>int main( )int a;scanf(“%d”,&a
11、);printf(“n%d(10) ,%o(8), %x(16)n”, ); return 0;(三)调试程序要求:调试运行下列程序是否正确,若有错,写出错在何处?填写正确的运行结果。1.行号 #include <stdio.h>1 int main( )2 int u=v=89;3 printf(“u=%d,v=%dn”,u,v); 4 return 0;5 错错误在 行 应改为:调试正确后的运行结果输出结果:2.下面的程序试图计算由键盘输入的任意两个整数的平均值:行号#include <stdio.h>1int main()23int x,y,
12、a;4scanf("%x,%y",&x,&y); 5a=(x+y)/2;6printf("The average is %d:n", a); 7 return 0;8 错错误在 行 应改为:调试正确后的运行结果输入数据2,61,4-1,-3-2,42,0输出结果:(四)编写程序1. 编程求的和。2.输入圆半径(值为5),输出圆的周长和面积。实验3 顺序程序设计一、目的和要求1、掌握C语言中使用最多的一种语句赋值语句的使用方法。2、掌握各种类型数据的输入输出的方法,能正确使用各种格式转换符。3、进一步掌握编写程序和调试程序的方法。
13、二、实验内容1、(教材94页,习题3.3.)用下面的scanf函数输入数据,使a=3,b=7,x=8.5,y=71.82,c1=A,c2=a.问在键盘上如何输入。#include <stdio.h>int main() int a,b; float x,y; char c1,c2; scanf("a=%d b=%d",&a,&b); scanf(" %f %e",&x,&y); scanf(" %c %c",&c1,&c2);printf("a=%d b=%d&qu
14、ot;,a,b); printf(" %f %e",x,y); printf(" %c %c",c1,c2); return 0;先后按以下方式输入数据,分析运行结果是否正确,如果不正确,说明为什么会不正确。(1)3 78.5 71.82 A a(在8.5 ,71.82 ,A后面各有一个空格) (2) a=3 b=78.5 71.82 A a (在8.5 ,71.82 ,A后面各有一个空格) (3)在输入8.5和71.82两个实数后输入回车符。 a=3 b=78.5 71.82 A a (4)a=3 b=78.5 71.82A a (在82后面没有空格)
15、 (5)a=3 b=78.5 71.82A a (在每个数据后有多个空格)2、编程序。输入一个华氏温度,要求输出摄氏温度。公式为: c=5/9 *(F-32),输出要有文字说明,取2位小数(教材95页,习题3.6) 3、编程求出某学生期末三门课程的总分及平均分。结果保留小数点后一位。三、分析与讨论、记下在调试过程中所发现的错误、系统给出的出错信息和对策。分析讨论对策成功或失败的原因。、总结掌握编写程序和调试程序的方法。实验4选择结构程序设计一、实验目的1.正确使用关系表达式和逻辑表达式表达条件。2.学习语句if使用方法。3.学习调试程序。二、实验内容1、从键盘输入一个整数,编程判断其奇偶性,并
16、输出结果。2、某托儿所收2岁到6岁的孩子,2岁、3岁孩子进小班(Lower class);4岁孩子进中班(Middle class);5岁、6岁孩子进大班(Higher class)。编写程序,输入孩子年龄,输出年龄及进入的班号。如:输入:3,输出:age:3,enter Lower class。调试无语法错误后,使用下列测试用例进行测试:(1)3岁;(2)4岁;(3)5岁;(4)7岁。3、 输入某学生的成绩(成绩为100分制,可以为89.5,如果输入的成绩不在0-100之间,请给出出错提示。),经处理后给出学生的等级,等级分类如下: 90分以上(包括90): A 80至90分(包括80):B
17、 70至80分(包括70):C 60至70分(包括60):D 60分以下: E三、实验要求1.复习选择结构程序设计。2上机前准备好上机所需的程序,上机时输入和调试自己所编写的程序。 3.上机结束后,应整理出实验报告,实验报告的内容应包括:题目、程序清单、运行结果及对运行情况的分析。实验5循环结构程序设计一、实验目的1、掌握在程序设计条件型循环结构时,如何正确地设定循环条件,以及如何控制循环的次数。2、了解条件型循环结构的基本测试方法。3、掌握如何正确地控制计数型循环结构的次数。4、了解在循环结构中,提高程序效率的方法。5、进一步学习调试程序。二、实
18、验内容1、编程求解:鸡兔同笼,有三十五只头,九十四只足,求鸡和兔各有多少?(提示:用穷举法求解。即鸡或免的个数x从0至35循环试探,如果满足共有94只足的已知条件,那么此时的x就是一个解。问题:循环条件可以进一步简化以提高程序效率吗?)2、输出所有的“水仙花数”,所谓的“水仙花数”是指一个3位数,其各位数字立方和等于该数本身。例如153=13+53+33.3、每个苹果0.8元,第一天买2个,从第二天开始,每天买前一天的2倍,直到当天购买的苹果个数不超过100的最大值为止,编写程序求每天平均花多少钱。三、实验要求1. 复习循环结构程序设计。2上机前准备好上机所需的程序,上机时输入和调试自己所编写
19、的程序。 3.上机结束后,应整理出实验报告,实验报告的内容应包括:题目、程序清单、运行结果及对运行情况的分析。实验6 数组一、实验目的:1.了解数组与数学矩阵的关系2.掌握数组的定义、引用和初始化3.理解二维数组数据的存储顺序二、实验内容1、从键盘输入10个整数,统计其中正数、零和负数的个数并输出。2、编写程序,要求在无序数组中查找给定值首次出现的位置。例如,数组为:a10=10 1 20 39 9 4 12 43 33 4,要查找的数:4,输出:其位置:5,若在数组中没找到该数,则输出:4在该数组中不存在。提示:从第0个元素到最后一个元素依次与被
20、找元素比较,相等则停止查找。循环结束条件: (已经找到)|所有的数组元素都已经找遍3、试编制程序使数组中的数按照从大到小的次序排列。(起泡法和选择法)三、实验要求1. 复习数组。2上机前准备好上机所需的程序,上机时输入和调试自己所编写的程序。 3.上机结束后,应整理出实验报告,实验报告的内容应包括:题目、程序清单、运行结果及对运行情况的分析。实验7 函数(一)一、实验目的:1.掌握定义函数的方法2.掌握声明函数的方法3.掌握函数实参与形参的对应关系,以及“值传递”的方式。二、实验内容1.上机调试下面的程序,记录系统给出的出错信息,并指出出错原因。把
21、程序加以修改。#include <stdio.h>int main() int x,y; printf("%dn",sum(x+y); int sum(a,b); int a,b; return(a+b); return 0;2、编写一个C程序,实现下面的功能:(1)编写一个函数square,对一个整数返回它的平方值。(2)编写一个函数cube,对一个整数返回它的立方值。(3)用函数square和cube编写函数quartic和quintic,它们分别返回一个整数的四次方和五次方值。(4)用上述函数编写一个显示从110的整数幂的表的程序,程序输出的形式如下:A TABLE OF POWERSN0. Square Cube Quartic Quintic1 1 1 1 12 4 8 16 323 9 27 81 243 三、实验要求1. 复习函数。2上机前准备好上机所需的程序,上机时输入和调试自己所编写的程序。3.上机结束后,应整理出实验报告,实验报告的内容应包括:题目、程序清单、运行结
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 接地极检修规程
- 2026年物流运输企业财务考核试题及答案
- 软化水设备检修规程
- 2026年遂宁市安居区网格员招聘笔试备考试题及答案解析
- 2026年萍乡市安源区网格员招聘笔试参考试题及答案解析
- 2026年襄樊市襄阳区网格员招聘笔试备考题库及答案解析
- 2026年陕西省渭南市网格员招聘考试备考试题及答案解析
- 2025年南京市雨花台区网格员招聘考试试题及答案解析
- 2026年浙江省温州市网格员招聘考试参考题库及答案解析
- 2026年云南省昭通市网格员招聘考试备考试题及答案解析
- 2026年陕西有色冶矿集团第一批招聘(48人)笔试参考题库及答案解析
- 2026年乡镇粮食安全责任制规定知识测试题
- 2026太平保险校招面试题及答案
- 企业环保工作绩效考核方案
- 2026年航空航天基础知识模拟题库
- 肿瘤免疫治疗伦理审查的特殊考量
- 大班科学《鸡蛋的沉浮》
- GB/T 4942.1-2006旋转电机整体结构的防护等级(IP代码)分级
- 禁毒学-毒品犯罪案件侦查
- GA 802-2019道路交通管理机动车类型
- 金融反诈理论考试题库(浓缩500题)
评论
0/150
提交评论