函数与指针C语言实验报告,学生实验报告_指针及指针与函数.docx

41528d3028836879cd698677c3999917.gif学生实验报告_指针及指针与函数.docx

学生实验报告实验课名称C语言程序设计实验项目名称指针及指针与函数综合实验专业名称测控技术与仪器班级2012240802学号201224080210学生姓名俞鼎鼎教师姓名武雅丽2013年5月27日实验日期2013年4月27日实验室名称WM2402一.实验名称指针及指针与函数综合实验二.实验目的与要求1掌握指针的概念、定义方法及基本操作。2掌握指针与一维数组的结合使用3掌握指针与二维数组的结合使用4掌握指针与字符串的结合使用三.实验内容1分析该程序运行后的结果是什么,并上机验证,用各种方法输入输出数组元素。2输入3个数,按由小到大的顺序输出。3设一数组有10个元素,已按升序排好。现要求编写一个程序,它能够把从指定位置开始的N个数按逆序重新排列,并输出新的完整数列。4计算5个数的平均值。要求在主函数中为5个数赋值并输出平均值,在自定义函数中计算平均值,要求自定义函数的形参为指针。5计算3个字符串各自的长度,要求用指针数组实现。四.算法描述1用各种方法输出数组元素的方法有1下标法2AJ3P2如果定义了一个指针变量,而没给指针变量一个具体的地址,则不可对该指针指向的内容进行输入输出操作。因此,定义指针时,一定要使指针有所指向。3这里我定义了一个SORT函数(含两个参数,其中,A是指定位置的地址,N是从指定位置开始排的N个数)对从指定位置开始的N个数按逆序重新排列这里值得注意的是”PAM1”,P指的是指定位置的地址。4这里我定义了一个指向数组的指针。通过循环使5个输入的数相加,之后得到他们的均值。5“CHARP{“HELLO“,“WORLD“,“MYWORLD“}”,正如我编的代码所示,首先定义的是一个指针数组,指针数组中的元素是每个字符串的首地址。然后我定义一个形参为字符串的首地址的测字符串长度的函数LENGTH对每个字符串进行运算即可。五.源程序1INCLUDE“STDIOH“VOIDMAIN{INTA10{1,2,3},PA,BCHARQ“ABCDE“BPPRINTF“\ND“,BPRINTF“\NDDDD“,A,A2,P1,P1PRINTF“\NDCSS“,Q,Q3,Q3,Q/以下是用各种输入输出方法输出数组元素/PAPRINTF“\NDDD“,A1,P1,A1}2INCLUDE“STDIOH“VOIDSWAPINTA,INTB{INTTTA,AB,BT}VOIDMAIN{INTA,B,C,TINTASCANF“DDD“,A,B,CIFABSWAPA,BIFACSWAPA,CIFBCSWAPB,CPRINTF“DDD“,A,B,C}3INCLUDE“STDIOH“VOIDSORTINTA,INTN{INTI,J,TFORI0IN1IFORJ0JN1IJIFAJAJ1{TAJAJAJ1AJ1T}}VOIDMAIN{INTA10{2,4,6,8,10,12,14,16,18,20},P,M,N,ISCANF“DD“,PAM1SORTP,NPAFORI0I10IPRINTF“\ND“,PI}4INCLUDE“STDIOH“INTAVEINTP{INTSUM0,Y,IFORI0I5ISUMPIYSUM/5RETURNY}VOIDMAIN{INTA5,J,Q,YQAFORJ0J5JSCANF“D“,QYAVEAPRINTF“D“,Y}5INCLUDE“STDIOH“INTLENTHCHARS{CHARPSWHILEP \0 PRETURNPS}VOIDMAIN{CHARP{“HELLO“,“WORLD“,“MYWORLD“}PRINTF“D\N“,LENTHP0PRINTF“D\N“,LENTHP1PRINTF“D\N“,LENTHP2}六.运行结果与分析12345七.试验中遇到的问题、解决方法及体会1从第二题我们可以得出,不能通过改变形参的值而使实参指针的值或实参指针指向单元的值发生变化具体状况可以参看书P2252262对于第3题,我们要注意在定义SORT函数时对形参表的编写,一个好的函数加上正确的形参表绝对可以使我们的程序更有技巧性、凝练感。3在调用函数时要注意是什么传递方式,是值传递还是地址传递,并且实参和形参的类型得一一对应。4.在平时,我们应注意积累有关指针应用的相关函数及算法。看得多了,在我们自己编程的时候就能够将问题结构化,在脑海中有对问题的清晰的解决方法。我想,如果一个人编程能有像书法家挥笔疾书时的状态,那他肯定是学得相当厉害相当开心的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值