




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、试验 1: C 语言程序初步试验名称:C 语言程序初步试验类型 : 验证型一、试验目的明白 Turbo C 集成开发环境;熟识 C 程序的实现过程和方法;把握编辑、编译、连接、运行程序的过程和方法;明白常见的两种语法错误(Error/Warning);二、试验内容明白 Turbo C 集成开发环境的功能,熟识菜单、热键基本操作启动、退出 Turbo C 集成开发环境;明白 F5/F6; F10 ,、 、功能键; Alt+ 高亮度键的成效和作用;激活文件菜单 File 、编译菜单 Compile、运行菜单 Run 、监视菜单 Break/Watch,查看菜单项项;在 Turbo C 下完成 “
2、源程序清单 ” 中规定的程序题;三、试验要求试验中认真观看本试验创建的目录、文件,回答试验小结和摸索中的问题;在 Turbo C 下完成 “源程序清单 ”中规定的程序题;编辑、编译、运行程序并获得程序结果;假如程序有错,记录编译、连接遇到的提示错误;认真摸索出错缘由,并更正之;编制的程序必需储存在 用户目录中;注:用户目录可以用学号或姓名拼音简写;四、试验步骤、过程启动操作系统,查找 Turbo C 集成开发环境安装位置(路径);假如为: C:TC ,查看目录中是否有 tc.exe ,此程序就是 Turbo C 集成开发环境的执行程序;记住您的系统 Turbo C2.0 的安装位置;启动、退出
3、 Turbo C 集成开发环境;启动 Turbo C 集成开发环境;如:双击 tc.exe 文件图标;1 退出 Turbo C 集成开发环境;File-Quit 退出 Turbo C 集成开发环境再次启动 Turbo C 环境;(同前)Turbo C 环境中, F5/F6;F10 ,、功能键; Alt+ 高亮度键的成效和作用;重复按 F6 键,认真观看;当前激活窗口在编辑窗口、消息窗口之间切换;重复按 F5 键,认真观看;当前激活窗口最大,正常状态之间切换;先按 F10 ,可以看到主菜单被激活,按、 ,主菜单各个项被依次激活,试着按、可以打开相应菜单;重点浏览 File (文件治理) 、Run
4、 (程序运行掌握) 、Compile 菜单(程序编译、连接)菜单;最终按 主菜单各个项,首字母为红色(高亮度)ESC 键光标回到编辑窗口;可以按 Alt+ 高亮字母,直接激活相应菜单项项;例如按 Alt+F激活 File 菜单, 比 F10 再按光标快捷多了!按 ESC 键光标回到编辑窗口;观看当前源程序名NONAME.C表示当前的程序仍没有取名字,以后储存程序时,系统会提示输入源程序名;依据下面步骤完成第 1 个程序题;“File-“”New”创建一个新的源程序文件输入源程序,全屏幕编辑源程序;“File-“”Save ”储存源程序(文件名应按题目要求);观看编辑窗口源程序名是否已经修改;用
5、 Windows 资源治理器查看用户目录中是否产生了源程序文件 *.c ;“Compile ”-“Build all”编译、连接源程序;假如有语法错误,修改源程序后再次编译、连接程序,直到没有语法错误,系统提示胜利;2 编译连接胜利后用Windows资源治理器查看用户目录中是否产生了目标文件*.obj ,可执行文件 *.exe ,观看其命名规章;“Run”-“Run”运行程序,用 Alt-F5 切换到用户屏幕查看运行结果;对比结果是否与预期相同;假如发觉规律错误结果与预期不同,修改源程序,重复(3 )-(5 )储存、编译、运行程序,直到程序获得正确结果;留意:必需次序完成程序编辑、能运行的!编
6、译连接、 运行的各个过程; 没有正确编译胜利的程序是不行程序开发中常常用“ File ”“ Save”储存源程序以免意外导致源程序丢失;按步骤 5 完成第 2 个程序题;留意:Error 致命错的程序不能产生目标程序、执行程序,必需修改程序,并重新编译,直到胜利;按步骤 5 完成第 3 个程序题;留意:Warning警告错的程序可以产生目标程序、执行程序,试着运行一下;看看结果!_ ,仍是修改吧,警告错一般也意味着程序有毛病,尽管这种程序可以强行编译连接为可执行程序,但结果一般都有问题;五、源程序清单、测试数据、结果;最简洁的 C 程序; 要求文件名: 1_1.c main printfHel
7、lo world.n; 3 一个具有致命语法错的程序;要求文件名: 1_2.c main int i=9 printfi=%dn,i 一个具有警告语法错的程序;要求文件名: 1_3.c main int i=9,j,s; s=i+j; printfs=%dn,s; 六、试验小结F5/F6;F10 , 、功能键; Alt+ 高亮度键的成效和作用?答: F10 ,、 、:F10 激活 Turbo CF5 :编辑窗口或消息窗口最大 / 复原;F6 :切换编辑窗口 / 消息窗口;Alt+ 高亮度键,直接激活主菜单项;主菜单,光标键挑选菜单之间;回车确认;与 C 语言程序直接相关的几种文件及扩展名分别是
8、什么?答: C 语言源程序、目标程序、可执行程序,其后缀分别为 C 语言程序主要的实现过程?*.c ,*.obj ,*.exe ;答:分为编辑、编译、连接、运行四个阶段;其中,开发环境中,编辑完成后,可以直接启 动运行,但分解的阶段仍旧是四个,前面阶段未完成,程序仍旧不能运行;C 语言程序主要的错误?答:程序错误分为:语法错误:编译系统可以帮助查找出来的语法上的错误;语法错仍包括:致命错 Error/ 和;致命错必需修改! ,警告错可以不修改,但常常示意程序存在问题;警告错 Warning 规律错误:运行结果与预期不符,与程序算法规律相关的错误;4 试验 2:次序程序设计试验名称:输入与输出程
9、序设计试验类型:验证性一、试验目的把握:使用标准输入/ 输出函数进行常见数据类型的数据的输入/ 输出方法;初步培育编制程序框图和源程序、预备测试数据以及实际调试程序的独立编程才能;二、试验内容在 Turbo C 下完成程序题:依据商品原价和折扣率,运算商品的实际售价(结果精确到小数点后 2 位)依据圆柱体的半径和高,运算圆周长、圆面积、圆柱体表面积、圆柱体体积(结果精确到小数点后 3 位)注:变量名可以自由挑选,以易于懂得为原就;数据由键盘输入;三、试验要求试验前编制程序框图、编写源程序、预备测试数据;试验测试数据要求从键盘输入;应尽力追求程序的完善;比如要求输入数据,应当显示提示字符串,提示
10、用户输入;输出时要求有文字说明;在 Turbo C 下完成程序的编辑、编译、运行,获得程序结果;假如结果有误,应找出缘由,并设法更正之;编制的程序必需储存在 用户目录中;注:用户目录可以用学号或姓名拼音简写;四、试验步骤、过程启动操作系统;启动 Turbo C 集成开发环境; (方法与试验 1 相同)完成 2 个程序题;(编辑、储存、编译连接、运行程序,步骤与试验 1 相同)退出 Turbo C 集成开发环境,关机;五、源程序清单、测试数据、结果;依据商品原价和折扣率,运算商品的实际售价5 程序流程图:main float price,discount,fee; printfInput Pri
11、ce,Discount:; scanf%f%f,&price,&discount; fee=price*1-discount/100; printfFee=%.2fn,fee; 运行:Input Price,Discount:100 10 Fee=90.00 注:下划线表示程序运行后用户输入的数据, 表示回车,以后不再说明;2、依据圆柱体的半径和高,运算圆周长、圆面积、圆柱体表面积、圆柱体体积程序框图(略)void main float r,h,pi=3.1415926; float c0,s0,s,v; printfInput r,hm:; scanf%f,%f,&r,&h; c0=2*pi
12、*r; s0=pi*r*r; s=2*pi*r*h+2*pi*r*r; v=pi*r*r*h; printfc0=%.3fmns0=%.3fm2ns=%.3fm2nv=%.3fm3n,c0,s0,s,v; 运行:6 Input r,hm:1,2 c0=6.283m s0=3.142m2 s=18.850m2 v=6.283m3 六、试验显现的问题、试验结果分析(参考)C 语言变量先定义后使用,变量名大小写敏锐;scanf 输入数据,变量应当使用取地址运算;scanf 函数格式字符串中的一般字符要原样输入,否就会发生错误;七、试验小结如 scanf%f,%f,&price,&discount;
13、如何输入两个数据?答:scanf 函数格式字符串中非格式字符要求原样输入,printf 函数格式字符串中非格式字符在输出时原样输出;由于格式字符串为 %f,%f ,即要求两个浮点数之间由,分隔,所以输入数据时必需输入,;例如: Input Price,Discount:100,10 7 试验 3:挑选结构程序设计试验名称:挑选结构程序设计试验类型:验证性一、试验目的把握关系、规律运算符及其表达式的正确使用;把握 if 语句和 switch 语句的使用;明白 Turbo C 程序调试的基本方法;二、试验内容在 Turbo C 下完成程序题:有如下函数,要求输入 x 的值,求 y 的值;|X|,X
14、0 Y= X2,0X10 LogX ,X 10输入 1-7 之间的任意数字,程序依据用户的输入输出相应的星期值;某单位立刻要加工资,增加金额取决于工龄和现工资两个因素:对于工龄大于等于 20 年的,假如现工资高于 2022 ,加 200 元,否就加 180 元;对于工龄小于 20 年的,假如现工资高于 1500 ,加 150 元,否就加 120 元;工龄和现工资从键盘输入,编程求加工资后的员工工资;三、试验要求试验前绘制程序流程图,编制源程序、预备测试数据;在 Turbo C 下完成程序的编辑、编译、运行,获得程序结果;试验中可以采纳 Turbo C 程序调试基本方法帮助查找程序中的规律问题;
15、四、试验步骤、过程编辑、编译、运行程序题 1 ,分别使用数据-5 ,0,5 ,10 , 100 做测试;编辑、编译、运行程序题 2 ,分别使用数据 1,7 ,8 做测试;编辑、编译、运行程序题 3 ,测试数据见下表:8 工龄 y(年)现工资 S0 (元)F7 检查变量值,用F4 可以将25 2200 22 1900 18 1700 16 1400 尝试跟踪程序题1 运行;用 F7 或 F8 键单步跟踪程序,用程序运行到光标当前位置;五、源程序清单、测试数据、结果;给定 y=fx 函数,要求输入 x 的值,求 y 的值;#include main float x,y; scanf%f,&x; i
16、fx0 y=fabsx; else ifx10 y=x*x; else y=log10 x; printf%fn,y; 测试运行:-5 5.000000 0 0.000000 5 25.000000 10 1.000000 100 2.000000 2、输入 1-7 之间的任意数字,程序依据用户的输入输出相应的星期值;main 9 int week; printfInput1-7:; scanf%d,&week; switchweek case 1:printfMon.n; break; case 2:printfTue.n; break; case 3:printfWed.n; break;
17、 case 4:printfTur.n; break; case 5:printfFri.n; break; case 6:printfSat.n; break; case 7:printfSun.n; break; default:printfThe input is wrong.n; 测试运行:Input1-7:1 Mon. Input1-7:5 Fri. Input1-7:8 The input is wrong. 3、工资运算;main float s0,s; int y; printfInput s0,y:; scanf%f,%d,&s0,&y; ify=20 ifs0=2022s=
18、s0+200; else s=s0+180; else ifs0=1500s=s0+150; 10 else s=s0+120; printfs=%fn,s; 测试运行:Input s0,y:2200,25 s=2400.000000 Input s0,y:1900,22 s=2080.000000 Input s0,y:1700,18 s=1850.000000 Input s0,y:1400,16 s=1520.000000 六、试验显现的问题、试验结果分析(不要照抄哦,_ )求肯定值对于浮点数要使用函数fabs ;使用 abs 是对整数取肯定值;以 10 为底的对数,应当使用函数 log
19、10 ;0X 10 不能表示为 0=x10,否就尽管无语法错误,但是含义不正确;case 语句与常量之间应当有空格,否就当做语句标号处理;如 现);七、试验小结case1 :;(使用单步跟踪发程序错误分为语法错误和规律错误;语法错误可以由编译器帮助检查,规律错误编译器无法检查出来;程序规律错误比语法错误更加隐藏,程序跟踪可用于发觉程序规律错误;调用库函数应当包含对应头文件,帮忙进行类型匹配检查和类型转化,保证函数调用使用正确参数;11 试验 4:循环结构程序设计试验名称:循环结构程序设计试验类型:验证型一、试验目的把握 while ,do-while,for 循环的语法结构与应用;把握 whi
20、le ,do-while 循环的区分;把握 Turbo C 单步执行调试程序的方法;二、试验内容完成程序题:用三种循环结构,求 1000 以内奇数的和;用 while,do-while 循环求 i-10 的连加和, i 由用户输入;有一堆零件( 100 200 个之间),假如以 4 个零件为一组进行分组,就多 2 个零件;假如以 7 个零件为一组进行分组,就多 3 个零件;假如以 9 个零件为一组进行分组,就多 5个零件;编程求解这堆零件总数;提示:用穷举法求解;即零件总数 x 从 100-200 循环摸索,假如满意全部几个分组已知条件,那么此时的 x 就是一个解;分组后多几个零件这种条件可以
21、用求余运算获得条件表达式;三、试验要求试验前编制源程序、对第 2 个试验内容需要预备测试数据;在 Turbo C 下完成程序的编辑、编译、运行;查看、分析程序结果;四、试验步骤、过程编辑、编译、运行程序题1 ;3,15 做测试;编辑、编译、运行程序题2 ,分别使用数据编辑、编译、运行程序题3 ;五、源程序清单、测试数据、结果;12 用三种循环结构,求 1000 以内奇数的和;(1 )用 while 结构实现void main long sum; int i,item; sum=0,i=0,item=2*i+1; whileitem1000 sum=sum+item; i+; item=2*i+
22、1; printf1+3+5+.999=%ldn,sum; (2 )用 do-while 结构实现 void main long sum; int i,item; sum=0,i=0,item=2*i+1; do sum=sum+item; i+; item=2*i+1; whileitem1000; printf1+3+5+.999=%ldn,sum; (3 )用 for 结构实现 void main long sum; int i,item; forsum=0,i=0,item=2*i+1; item1000; i+,item=2*i+1 sum=sum+item; printf1+3+5
23、+.999=%ldn,sum; 运行结果:1+3+5+.999=250000 13 2、用 while,do-while 循环求 i-10 的连加和, i 由用户输入;(1 )用 while 循环实现main int sum=0,i; printfInput i:;scanf%d,&i; whilei=10 sum+=i; i+; printfsum=%dn,sum; 测试运行结果:Input i:7 sum=34 Input i:15 sum=0 (2 )用 do-while 循环实现main int sum=0,i; printfInput i:;scanf%d,&i; do sum+=i
24、; i+; whilei=10; printfsum=%dn,sum; 测试运行结果:Input i:7 sum=34 Input i:15 sum=15 3、穷举法搜寻运算零件总数 main int x,flag=0; 14 forx=100; x=200; x+ ifx%4=2&x%7=3&x%9=5 flag=1; break; ifflagprintfx=%dn,x; else printfno answer.n; 运行结果:x=122 六、试验显现的问题、试验结果分析对于累加问题,获得的累加值可能超过变量答应的范畴,显现溢出错误(规律错误-编译时不能发觉) ;程序题 1:原先 sum
25、 定义为 int ,后来改为 long 后程序获得了正确的结果;七、试验小结变量类型的挑选应当考虑变量的使用范畴;循环程序可以用三种结构实现,三种结构一般情形可以相互替换;while ,do-while循环的区分: while先判定循环条件,假如条件满意再执行循环体,假如以决条件不满意,循环体一次也不执行;do-while先执行一次循环体再判定循环条件,定是否再次执行循环体,即就是说循环体至少执行一次;穷举法是利用运算机高速运算才能摸索搜寻求解复杂问题的一种很好的方法;15 试验 5:数组程序设计试验名称:数组程序设计试验类型:验证型一、试验目的把握一维数组和二维数组的定义、初始、数组元素引用
26、;把握一维数组和二维数组的输入 / 输出;把握与数组有关的算法;二、试验内容编制程序,求 Fibonachi 数列的前 10 项;提示: Fibonachi 的第 1 ,2 项分别为 1,1;其后任何一项满意 a i=a i-2 +a i-1 ;编写找出 1 100 之间能被 7 或 11 整除的全部整数,存放在数组 a 中, 并统计其个数; 要求以每行排列 5 个数据的形式输出 a 数组中的数据;设有 4 4 的方阵,其中的元素由键盘输入;求出(线上元素之积; (3)方阵中最大的元素;1 )主对角线上元素之和; (2 )辅对角提示:主对角线元素行、 列下标相同; 辅对角线元素行、 列下标之和
27、等于方阵的最大行号(或最大列号)下标、行列号基于 0;三、试验要求编制源程序,对于程序 3 输入测试数据;在 Turbo C 下完成程序的编辑、编译、运行;查看、分析程序结果;四、试验步骤、过程编辑、编译、运行程序题 1 ;编辑、编译、运行程序题 2 ;编辑、编译、运行程序题 3 ;测试数据:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 16 五、源程序清单、测试数据、结果;1、求 Fibonachi 数列的前 10 项 main int f11=0,1,1,n; forn=3; n=10; n+ fn=fn-1+fn-2; forn=1; n=10; n+ p
28、rintf%d ,fn; printfn; 程序结果:1 1 2 3 5 8 13 21 34 55 2、找出 1 100 之间能被 7 或 11 整除的全部整数 main int n=0,a100,i; fori=1; i=100; i+ ifi%7=0|i%11=0 an=i; n+; printfn=%dn,n; fori=0; in; i+ printf%dt,ai; ifi+1%5=0printfn; printfn; 程序结果:n=22 17 7 11 14 21 22 28 33 35 42 44 49 55 56 63 66 70 77 84 88 91 98 99 3、方阵求
29、出( 1 )主对角线上元素之和;(2 )辅对角线上元素之积;(3)方阵中最大的元素;#include #define N 4 main int aNN,s1=0,s2=1,max=0,i,j; fori=0; iN; i+ forj=0; jN; j+ scanf%d,&aij; max=a00; fori=0; iN; i+ forj=0; jmaxmax=aij; printfs1=%d,s2=%d,max=%dn,s1,s2,max; 程序结果:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 s1=34,s2=3640,max=16 六、试验显现的问题、试验
30、结果分析数组下标范畴简洁搞错,简洁产生越界错误;利用 scanf 输入数据时取地址符号 & 简洁遗忘;七、试验小结典型算法需要在懂得的基础上记忆;18 试验 8:字符数组与字符串函数试验名称:字符数组与字符串函数试验类型:验证型一、试验目的把握字符数组的定义、初始、数组元素引用、输入输出;把握字符数组的处理把握常用字符串处理函数二、试验内容编制程序: 对键盘输入的字符串进行逆序,逆序后的字符串仍旧保留在原先字符数组中,最后输出;(不得调用任何字符串处理函数,包括 strlen )例如:输入 hello world 输出 dlrow olleh 编写程序: 对从键盘任意输入的字符串,将其中全部的
31、大写字母改为小写字母,而全部小写字母改为大写字母,其它字符不变;(不调用任何字符串处理函数)例如:输入: Hello World. 输出: hELLO wORLD. 编写程序:从键盘输入 4 个字符串(长度 20 ),存入二维字符数组中;然后对它们进行排序(假设由小到大次序) ,最终输出排序后的4 个字符串;(答应使用字符串函数)提示:字符串比较可以用strcmp函数实现,排序方法可以挑选法或冒泡法;三、试验要求绘制流程图、编制源程序,测试数据;1-2 题不得使用任何字符串处理函数,3 题答应使用字符串处理函数;在 Turbo C 下完成程序的编辑、编译、运行;查看、分析程序结果;四、试验步骤
32、、过程编辑、编译、运行程序题1 ,使用数据: hello world题做测试;用数据:编辑、编译、运行程序题2 ,使用数据: Hello World做测试;编辑、编译、运行程序3,使SpanishChinaAmericaJapan做测试;19 五、源程序清单、测试数据、结果;1、字符串进行逆序 main char str100; int n,i,j; getsstr; n=0; whilestrnn+; fori=0,j=n-1; ij; i+,j- char k=stri; stri=strj; strj=k; putsstr; 测试运行结果:hello world dlrow olleh
33、2、大写变小写,小写变大写 #include main char s100; int i; getss; fori=0; si.=0; i+ ifsi=A&si=a&si=zsi-=32; putss; 20 测试运行结果:Hello World. hELLO wORLD. 3、串排序(采纳挑选法排序)#include #define N 4 main char sN20; int i,j; fori=0; iN; i+getssi; fori=0; iN-1; i+ forj=i+1; j0 char t20; strcpyt,si; strcpysi,sj; strcpysj,t; for
34、i=0; iN; i+putssi; 测试运行结果:Spanish China America Japan America China Japan Spanish 六、试验小结对于字符串的处理可以将字符串当作字符数组逐个元素处理,体处理;字符串串尾终止符号 0 在编制字符串处理程序很重要;也可以调用字符串处理函数整字符串处理函数可以减轻编程工作量,以提高软件开发的效率;要调用系统函数一般应包含此系统函数的明白并熟识常用字符串处理函数乃至其它系统函数可“头文件 ”,以便编译系统检查调用格式;假如在编程时遗忘一个系统函数的调用格式,可以将光标停留在此函数上,并按 ctrl+F1键联机查询;gets
35、 可以输入带空格字符串,而 scanf 不能;22 试验 6:函数的定义与调用试验名称:函数的定义与调用试验类型:综合型一、试验目的把握函数定义(返回、函数名、参数、函数体),调用;把握函数的声明嵌套调用、递归调用;二、试验内容编制函数 fun ,其功能是:删除一个字符串中指定的字符;要求:原始字符串在主函数中输入,处理后的字符串在主函数中输出;例如:输入“ I am a teacher,you are a student ” 和e输出 “ I am a tachr,you ar a studnt”;编制函数 sortstr,其功能是对多个字符串进行排序;要求:欲排序的字符串在主函数中输入,排
36、好序的字符串在主函数中输出;提示:排序算法可参照试验9 第 4 题,即将排序算法改为由一个函数sortstr实现;把握函数声明的使用;三、试验要求1、2 题编制源程序和测试数据;在Turbo C下完成程序的编辑、编译、运行并分析程序结果;3 题按试验步骤完成,认真观看,认真摸索摸索题;四、试验步骤、过程编辑、编译、运行程序题 1 ;使用字符串:“ I am a teacher,you are a student” 以及字符做测试;编辑、编译、运行程序题 2;使用数据: “ Spanish” 、“ China”、“ America” 、“ Japan” 、“England ”做测试;把握函数声明
37、的使用23 输入下面程序,编译、连接,假如没有输错,应当提示胜利;运行获得正确结果 100 ;float funfloat f return f*f; void main float k; k=fun10.0; printf%fn,k; 把 fun 函数移到 main 函数之后,再次编译,提示错误:Type mismatch in redeclaration of fun,(重新定义了 fun ,类型不一样) ;提示:移动一块程序可以用 KB,KK 定义要移动的块, 然后移动光标到要移动的目标位置,KV 移动程序块;另外,KC 仍可以复制一块程序,试试吧!在 main 函数前增加函数声明 fl
38、oat funfloat f;,再次编译,提示胜利并能正确运行获得结果;摸索:在什么情形需要函数声明?五、源程序清单、测试数据、结果;删除字符串中指定的字符#include void funchar ,char; void main char s100,c; getss; c=getchar; funs,c; putss; void funchar s,char c int i,j; 24 fori=0; si.=0; i+ ifsi=c forj=i; sj.=0; j+ sj=sj+1; 测试运行:I am a teacher,you are a student e I am a tach
39、r,you ar a studnt 字符串进行排序(挑选法)#include void sortstrchar s20,int n int i,j; fori=0; in-1; i+ forj=i+1; j0 char t20; strcpyt,si; strcpysi,sj; strcpysj,t; void main char s520; int i; fori=0; i5; i+getssi; sortstrs,5; fori=0; i5; i+putssi; 测试运行:Spanish China America 25 Japan England America China Englan
40、d Japan Spanish 函数声明的使用float funfloat f return f*f; void main float k; k=fun10.0; printf%fn,k; 或:float funfloat f; void main float k; k=fun10.0; printf%fn,k; float funfloat f return f*f; 是正确的程序形式;六、试验小结通过编制两个函数,您认为定义函数的关键是什么?答:定义函数的关键是确定函数头;确定了函数头就确定了函数的整体框架;应当在懂得函数功能基础上,确定函数形式参数(出入口参数)、返回值类型(出口参数),
41、进而确定函数头;在什么情形需要函数声明?答:函数调用显现在函数定义前时,应当在函数调用前进行函数声明;这样,可以使编译器在函数调用时就可以明确函数调用格式,产生正确的编译目标代码;26 试验 7:指针试验名称:指针试验类型:验证型一、试验目的进一步懂得指针概念;把握指针变量的定义、初始化以及通过指针变量对数据的拜访;把握指针与一维数组的关系;二、试验内容运行下面程序,懂得指针的概念;main int a10=1,2,3,4,5,6,7,8,9,10; int *p; forp=a; p=A&*p=a&*p=0&*p=9c2+; else if*p= c3+; p+; printf%dt%dt%
42、dt%dn,c0,c1,c2,c3; 测试运行:Hello World. 3.14 WB 4 8 3 3 六、试验摸索程序 1 中“ p=A&*p=a&*p=0&*p=9” 分别表示什么含义?这几个条件表达式太长,Turbo C 有无系统函数可以替代?程序 2 中“ int c4=0; 定义的数组是什么作用?c0-c3 分别代表什么?程序 2 中“ char s100;”定义的数组是什么作用?假设 int *p1;float *p2;那么 p1=p1+5,p2=p2+5 分别是什么含义?赋值后 p1 、p2 存放的地址值分别增加了多少?假设 float *p;请问 p,*p ,&p 分别代表什
43、么?画图表示;假设 p 是一个指针变量,指针变量 p 为什么必需初始化后,才可以用 *p 拜访?画图表示;两个程序对指针的初始化分别用哪条语句完成?29 试验 8:文件试验名称:文件试验类型:验证型试验预备:数据文件 d1.txt, d2.txt ,din.txt 一、试验目的1、把握文件输入 / 输出的操作过程;2、把握文件的基本打开方式 3、把握文件常用文件函数的应用二、试验内容 将两个文本文件连接成一个文本文件;给文本文件加上行号后储备到另外一个文本文件 . 提示:读文件一行函数 int getlineFILE *fp, char buffer 由老师供应;fp 指向的文本文件中读取一行
44、,并存放在缓冲区 buffer 中;函数功能:从返回值:0正常读取以 n 终止的文本行,文件没有终止;1读取到一部分文本,文件终止;2未读取到文本,文件终止;三、试验要求 懂得题意,编制程序和测试数据文件;程序应当具体注释;四、试验步骤、过程(同学自行填写,填写程序实现过程)五、源程序清单、测试数据、结果;30 两个文件连接#include void main char n180,n280,n380; FILE *fp1,*fp2,*fp3; char ch; printf.link two file.n; printffirst file :; getsn1; printfsecond fi
45、le:; getsn2; printflinked file:; getsn3; fp1=fopenn1,r; fp2=fopenn2,r; fp3=fopenn3,w; if.fp1|.fp2|.fp3printfError Open File.n; exit1; whilech=fgetcfp1.=EOF fputcch,fp3; whilech=fgetcfp2.=EOF fputcch,fp3; fclosefp1;fclosefp2;fclosefp3; printflink complete.n; 测试数据文件:d1.txt 内容:Hi Hello How are you. d2.
46、txt 内容:good morning. Mrs Wang 运行过程:.link two file. first file :d1.txt second file:d2.txt linked file:d3.txt link complete. 运行后产生文件 d3.txt :Hi 31 Hello How are you. good morning. Mrs Wang 文本文件加行号#include /* Read A Line From File. return 0:read a line( n ) , 1:read a line,eof 2:no new line,eofdiscard
47、buffer content */ int getlineFILE *fp,char buffer char c; int i=0; iffeoffpbufferi=0; return 2; c=fgetcfp; while.feoffp ifc=n bufferi=0; return 0; else bufferi=c; i+; bufferi=0; c=fgetcfp; bufferi=0; return 1; void main char n180,n280; 32 FILE *f1,*f2; int i,flag; /* flag=1或 2 ,file end */ char buff
48、er200; printf.add line num.n; printfinput file:; getsn1; printfoutput file:; getsn2; f1=fopenn1,r; f2=fopenn2,w; if.f1|.f2putsError Open File.n; exit1; i=1; flag=getlinef1,buffer; whileflag=0 fprintff2,%dt%sn,i,buffer; i+; flag=getlinef1,buffer; ifflag=1fprintff2,%dt%sn,i,buffer; fcloseall; printfco
49、mplete.n; 测试数据文件din.txt内容:Hi Hello How are you. good morning. Mrs Wang 运行过程:.add line num. input file:din.txt output file:dout.txt complete. 运行后产生文件 d3.txt :1 Hi 2 Hello How are you. 33 3 4 5 6 good morning. 7 Mrs Wang 六、试验摸索文件读写操作前应当做什么工作?文件完成后又应当做什么工作?文本文件,二进制文件操作前应当如何设置文件打开的方式?判定文件终止的两种方法是什么?两种方法有
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 口腔医疗机构可行性研究报告
- 时间轴表格-项目时间节点
- 三农标准化生产实施计划
- 污水处理项目可行性研究报告
- 新能源汽车充电桩发展
- 家用电器使用说明与维护指南
- 无人直升机物流配送项目可行性研究报告
- 职业规划与就业前景分析
- 监控练习试卷附答案
- 家服务员中级复习试题及答案
- GB 4404.1-2024粮食作物种子第1部分:禾谷类
- 2024年江西省公务员录用考试《行测》真题及答案解析
- 计算流体力学CFD
- 三大战役完整版本
- 电子商务概论(第四版)课件 第11、12章 电子商务典型应用、电子商务应用案例
- DB11T 353-2021 城市道路清扫保洁质量与作业要求
- 2024电力建设土建工程施工技术检验规范
- 2024年中国除尘器滤袋市场调查研究报告
- MFP无机硅声能凝胶施工方案
- 麦肯锡和波士顿解决问题方法和创造价值技巧
- DBJ33T 1320-2024 建设工程质量检测技术管理标准
评论
0/150
提交评论