欢迎来到天天文库
浏览记录
ID:56777057
大小:407.00 KB
页数:23页
时间:2020-07-09
《实验10 指针2 (修复的).doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、《C语言程序设计》实验报告实验时间:6月7号实验班级:计算机双学位1501实验报告总份(片)数:1份(片)实验教师:饶东宁计算机学院工一实验室广东工业大学《C语言程序设计》实验报告实验题目:实验10实验时间:6月7号实验班级:双学位1501实验人学号:3213010359实验人姓名:梁雪卿实验教师:饶东宁计算机学院工一实验室广东工业大学实验10指针21实验目的(1)进一步掌握指针的应用(2)能正确使用数组的指针和指向数组的指针变量(3)能正确使用字符串的指针和指向字符串的指针变量(4)了解指向指针的指针的用法2实验内容根据题目要求,编写程序(要求用指针处理),运行程序,分析结果,并进行必要
2、的讨论分析。(1)有n个人围成一圈,顺序排号。从第一个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的是原来的第几号的人。输入人数n算法说明:指针指向数组开头fori=0toi=n-1当mintmain(){inti,k,m,n,num[50],*p;scanf("n=%d",&n);p=num;for(i=0;i3、le(m4、实现之。用main函数调用。算法说明:定义a[5][5],*p,I,jfori=0toi=4forj=0toj=4输入a[i][j]p=&a[0][0]调用函数change(p)forj=0toj=4fori=0toi=4输出a[i][j]change(int*p)定义i,j,temp,*pmax,*pminpmax=ppmin=pfori=0toi=4forj=itoj=4temp=*(p+12)*(p+12)=*pmax*pmax=temptemp=*p*p=*pmin*pmin=temppmin=p+1fori=0toi=4/真*pmax<*(p+5*i+j)假pmax=p+5*i+5、j真*pmin>*(p+5*i+j)假pmin=p+5*i+jforj=0toj=4continue真i==0&&j==0假真*pmin>*(p+5*i+j)假pmin=p+5*i+jtemp=*pmin*pmin=*(p+4)*(p+4)=temppmin=p+1fori=0toi=4forj=0toj=4真(i==0&&j==0)6、7、(i==0&&j==4)假temp=*pmin*pmin=*(p+20)*(p+20)=temppmin=p+1pmin=p+5*i+j真*pmin>*(p+5*i+j)假continuefori=0toi=4forj=0toj=4continue真(i=8、=0&&j==0)9、10、(i==0&&j==4)11、12、(i==4&&j==0)假真*pmin>*(p+5*i+j)假temp=*pmin*pmin=*(p+24)*(p+24)=temppmin=p+5*i+j程序清单:#includeintmain(){voidchange(int*p);inta[5][5],i,j,*q;for(i=0;i<5;i++)for(j=0;j<5;j++)scanf("%d",&a[i][j]);q=&a[0][0];change(q);for(i=0;i<5;i++){for(j=0;j<5;j++)printf("%d",a[i][j])13、;printf("");}return0;}voidchange(int*p){inti,j,temp;int*pmax,*pmin;pmax=p;pmin=p;for(i=0;i<5;i++){for(j=0;j<5;j++){if(*pmax<*(p+i*5+j))pmax=p+i*5+j;if(*pmin>*(p+5*i+j))pmin=p+i*5+j;}}temp=*(p+12);*(p+12)=*pmax;
3、le(m4、实现之。用main函数调用。算法说明:定义a[5][5],*p,I,jfori=0toi=4forj=0toj=4输入a[i][j]p=&a[0][0]调用函数change(p)forj=0toj=4fori=0toi=4输出a[i][j]change(int*p)定义i,j,temp,*pmax,*pminpmax=ppmin=pfori=0toi=4forj=itoj=4temp=*(p+12)*(p+12)=*pmax*pmax=temptemp=*p*p=*pmin*pmin=temppmin=p+1fori=0toi=4/真*pmax<*(p+5*i+j)假pmax=p+5*i+5、j真*pmin>*(p+5*i+j)假pmin=p+5*i+jforj=0toj=4continue真i==0&&j==0假真*pmin>*(p+5*i+j)假pmin=p+5*i+jtemp=*pmin*pmin=*(p+4)*(p+4)=temppmin=p+1fori=0toi=4forj=0toj=4真(i==0&&j==0)6、7、(i==0&&j==4)假temp=*pmin*pmin=*(p+20)*(p+20)=temppmin=p+1pmin=p+5*i+j真*pmin>*(p+5*i+j)假continuefori=0toi=4forj=0toj=4continue真(i=8、=0&&j==0)9、10、(i==0&&j==4)11、12、(i==4&&j==0)假真*pmin>*(p+5*i+j)假temp=*pmin*pmin=*(p+24)*(p+24)=temppmin=p+5*i+j程序清单:#includeintmain(){voidchange(int*p);inta[5][5],i,j,*q;for(i=0;i<5;i++)for(j=0;j<5;j++)scanf("%d",&a[i][j]);q=&a[0][0];change(q);for(i=0;i<5;i++){for(j=0;j<5;j++)printf("%d",a[i][j])13、;printf("");}return0;}voidchange(int*p){inti,j,temp;int*pmax,*pmin;pmax=p;pmin=p;for(i=0;i<5;i++){for(j=0;j<5;j++){if(*pmax<*(p+i*5+j))pmax=p+i*5+j;if(*pmin>*(p+5*i+j))pmin=p+i*5+j;}}temp=*(p+12);*(p+12)=*pmax;
4、实现之。用main函数调用。算法说明:定义a[5][5],*p,I,jfori=0toi=4forj=0toj=4输入a[i][j]p=&a[0][0]调用函数change(p)forj=0toj=4fori=0toi=4输出a[i][j]change(int*p)定义i,j,temp,*pmax,*pminpmax=ppmin=pfori=0toi=4forj=itoj=4temp=*(p+12)*(p+12)=*pmax*pmax=temptemp=*p*p=*pmin*pmin=temppmin=p+1fori=0toi=4/真*pmax<*(p+5*i+j)假pmax=p+5*i+
5、j真*pmin>*(p+5*i+j)假pmin=p+5*i+jforj=0toj=4continue真i==0&&j==0假真*pmin>*(p+5*i+j)假pmin=p+5*i+jtemp=*pmin*pmin=*(p+4)*(p+4)=temppmin=p+1fori=0toi=4forj=0toj=4真(i==0&&j==0)
6、
7、(i==0&&j==4)假temp=*pmin*pmin=*(p+20)*(p+20)=temppmin=p+1pmin=p+5*i+j真*pmin>*(p+5*i+j)假continuefori=0toi=4forj=0toj=4continue真(i=
8、=0&&j==0)
9、
10、(i==0&&j==4)
11、
12、(i==4&&j==0)假真*pmin>*(p+5*i+j)假temp=*pmin*pmin=*(p+24)*(p+24)=temppmin=p+5*i+j程序清单:#includeintmain(){voidchange(int*p);inta[5][5],i,j,*q;for(i=0;i<5;i++)for(j=0;j<5;j++)scanf("%d",&a[i][j]);q=&a[0][0];change(q);for(i=0;i<5;i++){for(j=0;j<5;j++)printf("%d",a[i][j])
13、;printf("");}return0;}voidchange(int*p){inti,j,temp;int*pmax,*pmin;pmax=p;pmin=p;for(i=0;i<5;i++){for(j=0;j<5;j++){if(*pmax<*(p+i*5+j))pmax=p+i*5+j;if(*pmin>*(p+5*i+j))pmin=p+i*5+j;}}temp=*(p+12);*(p+12)=*pmax;
此文档下载收益归作者所有