收藏 分享(赏)

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

上传人:11xg27ws 文档编号:6330757 上传时间:2019-04-07 格式:DOC 页数:14 大小:283KB
下载 相关 举报
C语言程序设计——实验.doc_第1页
第1页 / 共14页
C语言程序设计——实验.doc_第2页
第2页 / 共14页
C语言程序设计——实验.doc_第3页
第3页 / 共14页
C语言程序设计——实验.doc_第4页
第4页 / 共14页
C语言程序设计——实验.doc_第5页
第5页 / 共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(

3、“aHello,CqustrI am 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 英寸,请编写一

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

5、提交报告的电子版和所有.c 文件。3. 实验报告的模板见实验二的附表一。三 实验任务1. 掌握各种格式输出符的使用方法。#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=3156890121;g=0.123456789;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);

6、printf(“f=%15.6f,g=%15.12fnm=%ld,n=%ldnp=%u,q=%un“,f,g,m,n,p,q);(1)运行此程序并分析运行结果。(2)在此基础上,修改程序的第 914 行:a=61;b=62;c1=a;c2=b;f=3156,890121;g=0.123456789;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

7、 a,b; float x,y; charc1,c2; scanf(“a=%d b=%d”, scanf(“%f %e”, scanf(“ %c %c”, 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”, 按以上

8、的输入、输出将如何变化?3. 编写程序从键盘读入一元二次方程的各项系数,然后根据这些系数计算并求解方程的根,要求:输出结果时小数点部分占 4 个字符宽度。4. P85-25. P85-36. P86-7实验四 顺序程序设计与选择结构程序设计一 实验目的1. 运用所学的数据类型、运算符和表达式写一个简单的顺序程序;2. 掌握关系运算符和关系表达式;3. 验证和掌握 IF 语句的用法;二 实验要求1. 完成实验任务要求的所有题目;2. 编写实验报告并提交报告的电子版和所有.c 文件。3. 实验报告的模板见实验二的附表一。三 实验任务1.分别录入下面的程序保存为 test1-1.c,test1-2.

9、c,test1-3.c,并运行将显示出什么结果?为什么?2.录入下面的程序,手动分析其结果然后运行,两者结果一致与否?给出具体的分析过程。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 循环的

10、使用方法,及其形式与结构上的异同;二 实验要求1. 完成实验任务要求的所有题目;2. 编写实验报告并提交报告的电子版和所有.c 文件。3. 实验报告的模板见实验二的附表一。三 实验任务1. 编写程序完成右式 , (注意:数据类型的选择) ;!sn2. 编写程序完成右式 ,当通项绝对值小于 1e-6 时循s13157 12*n环结束,然后输出该序列的和。3. P1492,要求使用 putchar 函数向屏幕输出字符。4. 编写程序完成右式 ,当通项绝对值小于 1e-s13157 (1)n12*n16 时循环结束,然后输出该序列的和。5. P1505。6. 设 x 取值为区间 的整数,求函数 的最

11、大值。1,20()sin()cosfxx思考题:P149 14实验六 循环控制结构程序设计(二)一 实验目的1. 运用所学的数据类型、运算符和表达式编写简单的程序;2. 验证和掌握 do while 与 ifgoto 循环的使用方法 ;3. 巩固和复习已有四种循环形式及其形式与结构上的异同;3. 巩固和掌握循环嵌套的方法以及循环终止与结束的方法;二 实验要求1. 完成实验任务要求的所有题目;2. 编写实验报告并提交报告的电子版和所有.c 文件。3. 实验报告的模板见实验二的附表一。三 实验任务1. 复习“条件判断执行循环体”和“执行循环体条件判断”两型循环的方法,然后分别编程用辗转相除法求解任

12、意两个自然数最大公约数的问题。2. 编程完成题目: 。s12134 (1)(n),1e6)3. 编程从键盘输入任意多个整数,求它们的和以及其平均值,最值。当有非法输入时循环结束。 (提示:从键盘读取整数成功则 scanf 函数返回值为非)4. 编程输出如下的九九乘法表。1*1=12*1=2 2*2=43*1=3 3*2=6 3*3=99*1=9 9*2=18 9*3=279*9=815. 用循环嵌套的方法完成 P14923,分别保存为两 test05_1.c 和 test05_2.c。6. 编程完成下列序列的和: s1(2)(123) (123 n),(5,30)7. 编程完成下列序列的和:

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

14、5,300) 。3. 编写函数计算如下序列,其中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 这样的

15、返回值语句正确吗?int main() 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)

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

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 生活休闲 > 社会民生

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报