
c语言报告21.pdf
8页实验报告(2010/2011 学年 第 一 学期)题目:C 语言语言专专业业学学生生姓姓名名班班级级学学号号授授课课教教师师授授课课单单位位日日期期评分内容具 体 要 求总分评分实验态度实验前认真预习,预习报告详细实验态度认真,积极主动10实验纪律准时到达实验室,不缺课,不迟到,不早退自觉遵守实验 室各项规章制度实验中按规程操作仪器设备10实验理论正确理解实验的原理和意义20实验操作能正确熟练使用工具、仪表、仪器实验操作符合规范要求 对实验中的故障错误能够自行进行检查、分析、判断30实验报告实验报告格式规范工整,内容完整无缺实验准确性高,实 验结果完整及时上交实验报告,能够对实验结果进行正确 分析处理30总评分教师签名: 年月日实验题目实验题目循环结构编程循环结构编程和高级函数编程和高级函数编程一、一、概述概述 1. 实验目的实验目的 (说明本实验所需要掌握的知识以及技能以及基本原理,(说明本实验所需要掌握的知识以及技能以及基本原理,400~~1000 字字))1. 学习利用 Debug 动态调试工具调试程序的基本方法 2. 熟悉使用 While,do-while 与 for 语句,掌握循环结构程序设计方法。
3. 掌握循环结构的嵌套 4. 掌握调试程序解决问题的两种方法 5. 掌握 VC++中的 Debug 调试工具的使用方法,学会利用调试器跟踪、 调试程序,会设置断点、单步跟踪,查看相应的变量或表达式的值, 查找、修改逻辑错误 6.掌握函数的复杂用法如函数的嵌套调用以及递归调用 7.理解函数的作用域、可见性、生存期、局部变量和全局变量 8.理解模块化程序设计思想,掌握函数的分类 9.学会定义和使用自定义函数 10.了解变量的不同存储类别2. 实验环境(概要说明实验所使用的网络以及软件环境实验环境(概要说明实验所使用的网络以及软件环境 400~~1000 字)字) 1. C 程序的开发步骤 C 语言是一种编译性的语言,设计好一个 C 源程序后,需要经过编译、 链接、生产可执行的程序文件,然后就可以执行并调试程序开发一个 C 程序需要经过如下几个步骤: 1)分析问题根据实际问题,分析需求,确定解决方法,并用适当的工 具描述它 2)编辑过程编写 C 源程序,并利用一个编辑器将源程序输入到计算 机中的某一个文件中C 源程序文件的扩展名为.c3)编译程序编译源程序,产生目标程序,文件扩展名为.obj。
4)链接程序将一个或多个目标程序与库函数进行链接后,产生一个可 执行文件,文件扩展名为.exe 5)运行调试程序运行可执行文件,分析运行结果 在编译、链接和运行的过程中,随时可能出现错误,此时要调试源程序, 并重复以上程序,直到得到正确结果为止 3. C++的集成开发环境的使用方法和使用步骤 为用户开发 C 和 VC++程序提供了一个集成环境, 这个集成环境的功能包括: 源程序的输入和编辑,源程序的编译和链接,程序运行时的调试和跟踪,项 目的自动管理,提供程序开发所需要的各种工具,并具有窗口管理和联机帮 助等功能使用 VC++集成环境编辑、调试、运行程序可分为如下几个步骤: 启动 VC++集成环境: 生成项目;生成源程序并将源程序文件加入到项目中; 编辑、链接和运行程序 设置程序断点并以 Debug 模式运行 按 F11 快捷键,进入程序单步执行过程在这个过程中,编程者可以将鼠标 移至相应变量处以观察它的当前值 通过分析, 编程者会发现“f(f(3,4),f(3,5))“ 调用语句中,首先被调用的是右边的 f(3,5)然后才是 f(3,4),最后以 f(3,4)和 f(3,5)的函数返回值作为实参再调用 f()函数, 在这之间 f()函数共被调用 3 次。
二、二、实验内容以及过程实验内容以及过程 1. 实验内容(说明实验需要验证或者实现的内容以及验证方法,实验内容(说明实验需要验证或者实现的内容以及验证方法,300~~800 字)字) 1. 编程输出试验 3 所示的图形 绘制图形时需要分析性、列以及每列数据间的关系,一般需要双重循环 嵌套来完成外层控制行数,内层循环控制每行行首空格和每行符号的 输出具体分析如下: 找到行首空格字符个数与行数的关系,每行符号个数与行数的关系本 图形的规律如下: 行数行首空格数(星号加一个空格)数 1010 219 3….… 4ii-110-i+1其中 i 代表第几行,每行行首空格数可以加一个相同的正整数,此时图 形整体往右偏移,形状不变 1.1 #include“stdio.h“ void main(){ int i,j,k; for (i=1;i main() { int swap(); int a=3,b=10;--------① swap(a,b); prntf(“a=%d,b=%d\n“,a,b);---------------④ } swap(int a,int b)------------② { int temp; temp=a;---------------------③ a=b; b=temp; }上机录入下列程序,并运行输出验证 2.4 #include int a=3,b=5; max(int a,int b) { int c; c=a>b?a:b; return(c); } void main() { int a=8; printf(“%d\n“,max(a,b)); }以下程序拟实现“将一个正整数从右到左按位输出”的功能。
2.5 #include void fun(long n); void main() { long n; printf(“请输入一个正整数:“); scanf(“%d“, printf(“n=%ld\n“,n); fun(n); printf(“\n“); } void fun(long n){ int a=0,b=0; while(n!=0) { b=n%10; n=n/10; a=a*10+b; } n=a; printf(“daoxu=%ld“,n); }四、四、实验结果以及分析(详细说明产生的数据以及需要说明的问题)实验结果以及分析(详细说明产生的数据以及需要说明的问题) 2. 结果结果 2.1,,3. 结果结果 2.2实验结果 2.3 #include main() { int swap(); int a=3,b=10;//①这里的 a,b 作用于 main 函数中,在整个 main 函数中可见 swap(a,b); prntf(“a=%d,b=%d\n“,a,b);//④这里的 ab 是 swap 函数处理后的结果, 范围同① } swap(int a,int b)//②这里的 a,b 是形参,作用范围仅限于 swap 函数 中 { int temp; temp=a;//③这里的 ab 是 swap 函数调用参数的一个变量, 作用范围在 swap 函数中,同② a=b; b=temp; }实验结果:2.4 8 请按任意键继续.....实验结果:2.5三、三、作业作业 1. XXXX 答:答: 2. XXXX四、四、实验感想及心得体会实验感想及心得体会 循环语句使得程序编写简单易行,很容易理解的同时简化了程序结构,节 约了时间和空间,但是循环次数的设定要谨慎考虑清楚,初值和步阶要适 当,确定最后又一个输出,不能出现死循环。
符号“\”整除, “%”取余。
