C语言程序设计——实验.doc

上传人:飞****2 文档编号:52216048 上传时间:2022-10-21 格式:DOC 页数:14 大小:264.50KB
返回 下载 相关 举报
C语言程序设计——实验.doc_第1页
第1页 / 共14页
C语言程序设计——实验.doc_第2页
第2页 / 共14页
点击查看更多>>
资源描述

《C语言程序设计——实验.doc》由会员分享,可在线阅读,更多相关《C语言程序设计——实验.doc(14页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、实验一:VC+集成环境及C程序的运行、调试方法一实验目的了解VC+6.0集成环境;掌握使用VC+6.0编写程序及运行和调试的方法;二实验环境硬件环境:PC;软件环境:VC+6.0;三实验任务1.编写程序,调用函数printf()在一行上输出你的姓名、籍贯和专业;再调用一次,在单独的行上输出你自己的一段信息;2.课本P314、6;3.输入下图中的程序,并编译调试,观察输出的结果;4.输入运行且调试P304和8,改正其错误并记录最终的正确结果;5.思考:课本P315,该如何完成?实验二 输入、输出及数据类型、运算符和表达式的验证一 实验目的1. 验证输入、输出函数,验证赋值运算符和赋值表达式、变量

2、的赋值方法;2. 验证算术运算符和运算表达式;二 实验要求1. 完成实验任务要求的所有题目;2. 编写实验报告并提交报告的电子版和所有.c文件。3. 实验报告的模板见附表一。三 实验任务1.新建一个C语言程序在程序中输入以下语句,如有错误请修改正确,并运行观察记录其结果。int a=23,b=023,c=0x23;float x=8.,y=.8,z=.,e=4e2.3;printf(“a=%d,b=%d,c=%dn”,a,b,c);printf(“x=%f,y=%f,z=%f,e=%fn”,x,y,z,e);printf(“075 075n”);printf(“aHello,CqustrI a

3、m a freshmansb!n”);printf(“Computer Science andn Technologyn”);2.P58_3(提示:要发出警报声,须在输出字符串中使用转义字符)3.P58_4(提示:浮点数以小数形式和指数形式输出须分别使用格式%f和%e)4.P59_5(提示:要为存放最终的变量选用合适的数据类型,否则将会产生溢出;另外在C语言编辑器中乘法运算符为“*”)5.P59_6(提示:注意浮点常量的科学计数式的表示方法)6.P59_77.1英寸=2.54厘米,对于长宽比为4:3的显示器,如果其对角线长为22英寸,请编写一个C程序分别计算输出其长宽各为多少厘米和英寸?附表一

4、:上 机 报 告姓名学号专业班级课程名称指导教师焦晓军机房名称I305上机日期上机项目名称实验二 输入、输出及数据类型、运算符和表达式的验证结果分析与体会:上机成绩,评语指导教师批改日期注:空间不够,可以自行增加。报告文件名格式:学号+姓名+第X次上机报告.DOC实验三 简单C程序设计一 实验目的1. 运用所学的数据类型、运算符和表达式写一个简单的顺序程序;2. 验证算术运算符和运算表达式;3. 验证和掌握printf()和scanf()的用法;二 实验要求1. 完成实验任务要求的所有题目;2. 编写实验报告并提交报告的电子版和所有.c文件。3. 实验报告的模板见实验二的附表一。三 实验任务1

5、. 掌握各种格式输出符的使用方法。#includevoid main()int a,b;float d,e;char c1,c2;double f,g;long n,m;unsigned p,q;a=61;b=62;c1=a;c2=b;d=3.56; e=-6.87;f=3156;g=0.;m=50000;n=-60000;p=32768;q=40000;printf(a=%d,b=%dnc1=%c,c2=%cnd=%6.2f,e=%6.2fn,a,b,c1,c2,d,e);printf(f=%15.6f,g=%15.12fnm=%ld,n=%ldnp=%u,q=%un,f,g,m,n,p,q

6、);(1)运行此程序并分析运行结果。(2)在此基础上,修改程序的第914行:a=61;b=62;c1=a;c2=b;f=3156,;g=0.;d=f;e=g;p=a=m=50000;q=b=n=-60000;运行程序,分析运行结果。2. 用下面的scanf函数输入数据,使a=3,b=7,x=8.5,y=71.82,c1=A,c2=a。问在键盘上如何输入?请书写程序 #include “stdio.h” void main() int a,b; float x,y; charc1,c2; scanf(“a=%d b=%d”,&a,&b); scanf(“%f %e”,&x,&y); scanf(

7、“ %c %c”,&c1,&c2); printf(“a=%d,b=%d,x=%f,y=%f,c1=%c,c2=%cn”);printf(“%15s”,“abcdefghijklmnopqrstuvwxyz”); /思考该语句执行的输出是什么?为什么? 运行,并按照如下方式在键盘上输入: A=3 b=7 8.5 71.82 A a 运行结果: 。思考:为什么在第三个scanf函数双引号第一个字符为空格字符,如果没有这个空格字符,而写成:scanf(“%c %c”,&c1,&c2); 按以上的输入、输出将如何变化?3. 编写程序从键盘读入一元二次方程的各项系数,然后根据这些系数计算并求解方程的根

8、,要求:输出结果时小数点部分占4个字符宽度。4. P85-25. P85-36. P86-7实验四 顺序程序设计与选择结构程序设计一 实验目的1. 运用所学的数据类型、运算符和表达式写一个简单的顺序程序;2. 掌握关系运算符和关系表达式;3. 验证和掌握IF语句的用法;二 实验要求1. 完成实验任务要求的所有题目;2. 编写实验报告并提交报告的电子版和所有.c文件。3. 实验报告的模板见实验二的附表一。三 实验任务1.分别录入下面的程序保存为test1-1.c,test1-2.c,test1-3.c,并运行将显示出什么结果?为什么?2.录入下面的程序,手动分析其结果然后运行,两者结果一致与否?

9、给出具体的分析过程。3.P11434.P11485.改写实验三中的第3题使程序能正确计算和输出任意一元二次方程的根。如果是实根,输入形式如“x1=5.2,x2=2.0”;如果是复数根,则输出形式如:“x1=5.0+3.2i,x2=5.0-3.2i”6.编写程序运行下列表达式,分析结果。实验五 循环控制结构程序设计(一)一 实验目的1. 运用所学的数据类型、运算符和表达式编写简单的程序;2. 巩固和掌握分支和选择的程序设计方法;3. 验证和掌握while与for循环的使用方法,及其形式与结构上的异同;二 实验要求1. 完成实验任务要求的所有题目;2. 编写实验报告并提交报告的电子版和所有.c文件

10、。3. 实验报告的模板见实验二的附表一。三 实验任务1. 编写程序完成右式,(注意:数据类型的选择);2. 编写程序完成右式,当通项绝对值小于1e-6时循环结束,然后输出该序列的和。3. P1492,要求使用putchar函数向屏幕输出字符。4. 编写程序完成右式,当通项绝对值小于1e-6时循环结束,然后输出该序列的和。5. P1505。6. 设x取值为区间的整数,求函数的最大值。思考题:P14914实验六 循环控制结构程序设计(二)一 实验目的1. 运用所学的数据类型、运算符和表达式编写简单的程序;2. 验证和掌握do .while与if.goto循环的使用方法;3. 巩固和复习已有四种循环

11、形式及其形式与结构上的异同;3. 巩固和掌握循环嵌套的方法以及循环终止与结束的方法;二 实验要求1. 完成实验任务要求的所有题目;2. 编写实验报告并提交报告的电子版和所有.c文件。3. 实验报告的模板见实验二的附表一。三 实验任务1. 复习“条件判断执行循环体”和“执行循环体条件判断”两型循环的方法,然后分别编程用辗转相除法求解任意两个自然数最大公约数的问题。2. 编程完成题目:。3. 编程从键盘输入任意多个整数,求它们的和以及其平均值,最值。当有非法输入时循环结束。(提示:从键盘读取整数成功则scanf函数返回值为非)4. 编程输出如下的九九乘法表。 1*1=1 2*1=2 2*2=4 3

12、*1=3 3*2=6 3*3=9 9*1=9 9*2=18 9*3=27.9*9=815. 用循环嵌套的方法完成P14923,分别保存为两test05_1.c和test05_2.c。6. 编程完成下列序列的和:7. 编程完成下列序列的和:思考题:1. 循环嵌套时有层数限制吗?如果循环没有明确制定结束条件,该如何结束一个循环?关键字break和continue如果有区别,请说明该区别时什么?2. 循环和分支可以相互嵌套吗?为什么?3. 编程完成P15116实验七 函数(一)一 实验目的1. 理解函数在结构化程序设计中的作用和地位;2. 理解和掌握C 语言中函数定义的方法;3. 理解和掌握函数的形

13、式参数与实际参数的区别,以及参数传递的规则;3. 理解和掌握函数返回值的作用和限定;二 实验要求1. 完成实验任务要求的所有题目;2. 编写实验报告并提交报告的电子版和所有.c 文件。3. 实验报告的模板见实验二的附表一。三 实验任务1. 编写函数统计一个字符数组中字母、数字和其他字符的数目,要求:字符数组以函数参数的形式传递给函数,统计得到的三类字符的数目在你自己定义的函数中调用函数printf 输出。2. 编写函数完成下列序列的和,要求序列中n 的值以参数的形式传递给函数:s =1+(1+ 2)+(1+ 2 +3)+!+(1+ 2 +3+!+ n), (n !5,300) 。3. 编写函数

14、计算如下序列,其中x 是形式参数,在main 中调用该函数时由键盘读入一个浮点数到double 类型的变量x 中,然后传递给该函数的形式参数。序列如下4. P24355. P243106.复习函数定义的有关规则,为下面的程序改错。include “stdio.h”double hcd(long a, long b)/函数求解整数a 和b 的最大公约数 int t;/1 认真阅读该程序并思考:t 在该函数内部不同的语句中各有什么作用?if(ab)t=a;a=b;b=t;t=a%b;while(t!=0) a=b;b=t;t=a%b;return t,b;/2 这样的返回值语句正确吗?int ma

15、in() int a=132,b=42,re;re=hcd(int a,int b);/3 思考上面的函数调用语句有错吗?如果有,错误在什么地方,如何改正?/另外这里的a 和b 与函数hcd 中的参数a 和b 一样吗?为什么?printf(“The result is %-15dn”,re);实验八 函数(二)递归一 实验目的1. 理解函数在结构化程序设计中的作用和地位;2. 理解和掌握C 语言中函数定义的方法;3. 理解和掌握函数的形式参数与实际参数的区别,以及参数传递的规则;4. 理解和掌握函数返回值的作用和限定;5. 理解和掌握递归的思想,并掌握使用递归解决问题的方法,能进行正确的递归程

16、序设计。二 实验要求1. 完成实验任务要求的所有题目;2. 编写实验报告并提交报告的电子版和所有.c 文件。3. 实验报告的模板见实验二的附表一。三 实验任务1. 使用递归方法求解两个正整数的最大公约数。2. 复习递归方法的运用特点,手动演算分析并写下下面的递归程序的执行过程及其结果,然后编程调试验证你的分析过程,函数fac 共调用了多少次?int fac(int m)if(m=1|m=0)return 1;else return fac(m-1)+fac(m-2);void main()int m=6; m=fac(m); printf(“m=%5dn”,m);3. 运用递归解决该问题:小猴

17、子第一天摘下若干桃子,当即吃掉一半,又多吃一个。第二天早上又将剩下的桃子吃一半,又多吃一个,以后每天早上吃前一天剩下的一半另一个。到第10 天早上猴子想再吃时发现,只剩下一个桃子了。问第一天猴子共摘多少个桃子?4. 运用递归解决该问题:输入一个数,求这个数的各位数字之和。5. 运用递归解决该问题:角谷定理输入一个自然数,若为偶数,则把它除以2,若为奇数,则把它乘以3 加1。经过如此有限次运算后,总可以得到自然数值1。求经过多少次可得到自然数1。思考和复习题:1. 递归的思想,在C 语言中不用函数能完成吗?使用递归的注意事项有哪些?2. 查阅快速排序的相关资料,阅读和体会给出的快速排序的伪代码,如有可能尝试写出递归的快速排序的C 语言源程序。3. 如果要统计一个函数递归调用了多少次,有什么办法吗?请编程尝试完成。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com