《湖北理工学院c语言实验报告六答案(完整版》由会员分享,可在线阅读,更多相关《湖北理工学院c语言实验报告六答案(完整版(5页珍藏版)》请在人人文库网上搜索。
1、实验六 指针实验课程名:高级语言程序设计(C)专业班级: 学号: 姓名: 实验时间: 实验地点: 指导教师: 一、实验目的和要求1. 通过实验进一步掌握指针的概念,会定义和使用指针变量;2. 能正确使用数组的指针和指向数组的指针变量;3. 能正确使用字符串的指针和指向字符串的指针变量;4. 能正确使用指向函数的指针变量;5. 了解指向指针的指针的概念及其使用方法。二、实验内容1、任务名称1.上机验证以下c70101.c程序的运行结果#include void main() int i,j,*pi,*pj;pi=&i;pj=&j;i=5;j=7;printf(n%dt%dt%dt%d,i,j,p。
2、i,pj);printf(n%dt%dt%dt%d,&i,*&i,&j,*&j);运行结果 :5 7 -34 -32-34 5 -32 7运行结果分析:指针的值与指针指向的变量值的区别。在VC环境下,以上运行结果中的负数是另一个值。2、任务名称源代码:#include void main() int i,a=1,2,3,*p;p=a; /*将数组a首地址赋给指针p*/for (i=0;ivoid main() int j,a12,*p=a;for(j=0;j void main( ) int a,b,c,*p=&c;void sum(int ,int ,int *);void swap(int。
3、 * ,int * );scanf(%d%d,&a,&b);sum(a,b,p);swap(&a,&b);printf(sum=%dn,c);printf(a=%d,b=%dn,a,b);void sum(int a,int b,int *c) *c=a+b; void swap(int *a,int *b) int t;t=*a;*a=*b;*b=t;运行结果:(需要截图)运行结果分析:输入两个整型数给变量a,b,指针p指向整型变量c,调用函数sum,把实参中的a,b传给形参a和b,实参p和形参c指向同一个变量,把a,b之和赋给p所指的变量c。然后调用swap函数使变量a和b的值交换。5、任。
4、务名称源代码:#include int table10;void lookup(int *t,int *a,int n) int k;*a=t0;for(k=1;ktk) *a=tk;void main() int k,min,*p=&min;for (k=0;kvoid main() int a55=0,*p5,i,j;for(i=0;ivoid main()void fun(int *,int *,int );int a5=4,6,8,10,12,s=1,*p=&s;fun(a,p,5);printf(%dn,s);void fun(int *a,int *s,int n)int i;for (i=0;in;i+)*s*=ai;运行结果:(需要截图)运行结果分析:指针变量p指向变量s,fun函数的功能是求出一个数组所有元素的乘积,并赋给形参s指向的整型变量。这样p所指的变量c的值就是数组a5中元素的乘积。最后输出c。三、结论通过本次实验,我进一步掌握指针的概念,会定义和使用指针变量;.学会了使用数组的指针和指向数组的指针变量;掌握了字符串的指针的使用方法以及指向字符串的指针变量和指向函数的指针变量的使用方法了解指向指针的指针的概念及其使用方法。