资源描述:
《C语言程序实验报告指针.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、数学与软件科学学院实验报告学期:2011至2012__第_1学期2011年10月31日课程名称:程序设计基础教程-C语言专业:2010级5_班实验编号:08实验项目:C语言程序实验报告指针指导教师_姓名:学号:实验成绩:一、实验目的及要求(1)掌握C语言环境下指针的声明、定义和使用方法;(2)掌握指针和变量以及指针和数组的关系;(3)掌握指针、数组之间的关系;(4)掌握指针、函数之间的关系。二、实验内容1.熟悉指针的基本使用方法。(1)请仔细分析以下程序段,并上机测试运行结果,对测试结果进行分析说明。1)程序段一:intmain(){inti=3,j=6,k=9;prin
2、tf(“i=%dj=%dk=%d”,*(&i),j,k);return0;}2)程序段二:intmain(void){intnA,*p;floatfB,*q;p=&nA;q=&fB;scanf(“%d,%f”,p,q);*p=nA*(*q);printf(“nAis%d,pis%dand*pis%d”,nA,p,*p);printf(“fBis%f,qis%dand*qis%d”,nA,q,*q);printf(“p+1=%dq+1=%d”,p+1,q+1);return0;}3)程序段三:intmain(void){intnA,*p,**q,***r;p
3、=&nA;q=&p;r=&q;printf(“PleaseinputnA::”);scanf(“%d”,**r);printf(Theresultsare:”);printf(“nA’valueis%d,%d,%d,%d”,nA,*p,**q,***r);printf(“nA,p,q,r’svalueis%d,%d,%d,%d”,nA,p,q,r);return0;}(2)设计一个C语言程序,以测试以下表达式的运算顺序。2.想使指针变量pt1指向变量nA和nB中的大者,pt2指向其小者,以下程序能否实现此目的?为什么?如果不行,请给出实现的方法。voidswa
4、p(int*p1,int*p2){int*p;p=p1;p1=p2;p2=p;}intmain(void){intnA,nB;int*pt1,*pt2;scanf(“%d,%d”,&nA,&nB);pt1=&nA;pt2=&nB;if(nA5、1.熟悉指针的基本使用方法。(1)请仔细分析以下程序段,并上机测试运行结果,对测试结果进行分析说明。1)程序段一:intmain(){inti=3,j=6,k=9;printf(“i=%dj=%dk=%d”,*(&i),j,k);return0;}实验结果见图一。2)程序段二:intmain(void){intnA,*p;floatfB,*q;p=&nA;q=&fB;scanf(“%d,%f”,p,q);*p=nA*(*q);printf(“nAis%d,pis%dand*pis%d”,nA,p,*p);printf(“fBis%f,qis%dand*qis%d
6、n”,nA,q,*q);printf(“p+1=%dq+1=%d”,p+1,q+1);return0;}实验结果见图二。3)程序段三:intmain(void){intnA,*p,**q,***r;p=&nA;q=&p;r=&q;printf(“PleaseinputnA::”);scanf(“%d”,**r);printf(Theresultsare:”);printf(“nA’valueis%d,%d,%d,%d”,nA,*p,**q,***r);printf(“nA,p,q,r’svalueis%d,%d,%d,%d”,nA,p,q,r);retur
7、n0;}实验结果见图三。2.想使指针变量pt1指向变量nA和nB中的大者,pt2指向其小者,以下程序能否实现此目的?为什么?如果不行,请给出实现的方法。voidswap(int*p1,int*p2){int*p;p=p1;p1=p2;p2=p;}intmain(void){intnA,nB;int*pt1,*pt2;scanf(“%d,%d”,&nA,&nB);pt1=&nA;pt2=&nB;if(nA