实验10指针2(修复的)

实验10指针2(修复的)

ID:41628770

大小:331.21 KB

页数:28页

时间:2019-08-29

实验10指针2(修复的)_第1页
实验10指针2(修复的)_第2页
实验10指针2(修复的)_第3页
实验10指针2(修复的)_第4页
实验10指针2(修复的)_第5页
资源描述:

《实验10指针2(修复的)》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、《C语言程序设计》实验报告实验时间:6月7号实验班级:计算机双学位1501实验报告总份(片)数:1份(片)实验教师:饶东宁计算机学院工实验室广东工业大学《C语言程序设计》实验报告实验题目:实验10实验时间:6月7号实验班级:双学位1501实验人学号:3213010359实验人姓名:梁雪卿实验教师:饶东宁计算机学院工实验室广东工业大学实验10指针21实验目的(1)进一步掌握指针的应用(2)能正确使用数组的指针和指向数组的指针变量(3)能正确使用字符串的指针和指向字符串的指针变量(4)T解指向指针的指针的用法2实验内容根据题目要求,编写程序(要求用指针处理),运行程序,分析结果

2、,并进行必耍的讨论分析。(1)有n个人围成一圈,顺序排号。从第一个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的是原来的第几号的人。算法说明:输入人数n指针指向数组开头fori=0toi=n-l*(p+i)=i+li=0k=0m=0当mvn・lk++*(p+i)=0k=0m++i++i=0当*p=0程序清单:#ineludeintmain(){inti,k,m,n,num[50],*p;scanf(〃n=%d〃,&n);p二num;for(i=O;i

3、(p+l)!二0)k++;if(k二二3){*(p+i)=0;k二0;m++;}if(i==n)i=0;while(*p=0)p++;prinIf("ThelastoneisNO.%d〃,*p);return0;运行结果:分析与思考:以1到n为序给每个人编号,i为每次循环时计数变量,k为按1,2,3报数时的计数变量,m为退出人数,当退出人数比n-1少吋执行循环体,对推村恩编号为0,报数到尾i恢复为0,循环继续。(2)将一个5*5的矩阵(二维数组)中最大元素放在中心,4个角分别放4个最小的元素(顺序为从左到右,从上到下依次从小到人存放),写一函数实现之。用main函数调用

4、。定义a⑸⑸广p,l,jfori=0toi=4forj=0toj=4_输入a[i][j]p=&a[0][0]调用函数change(p)fori=0toi=4forj=0toj=4输出a[i][j]change(int*p)定义ij^emp/pmax/pminpmax=ptemp=*pmin*pmin二*(p+4)*(p+4)=temppmin二p+1fori=0toi=4*(p+24)=temp程序清单:#includeintmain(){voidchange(int*p);inta[5][5],i,j,*q;for(i=0;i<5;i++)for(j=0

5、;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++)printfCz%d"、a[i][j]):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;i}temp二*(p+12);*(

6、p+12)=*pni8x;*pmax二temp;temp=*p;*p=*pmin;*pmin二temp;pmin二p+1;for(i=0;i<5;i++){for(j二0;j〈5;j++){if(i=0&&j=0)continue;if(*pmin〉*(p+5*i+j))pmin二p+5*i+j;}}temp=*pmin;*pminF*(p+4);*(p+4)二temp;pmin二p+1;for(i=0;i<5;i++){for(j=0;j<5;j++){if((i==0&&j==0)

7、

8、(i==0&&j==4))continue;if(*pmin〉*(p+5*i+j))p

9、min二p+5*i+j;}}temp=*pmin;*pmin二*(p+20);*(p+20)二temp;pmin二p+1;for(i=0;i<5;i++){for(j=0;j<5;j++){if((i==0&&j==0)

10、

11、(i==0&&j==4)

12、

13、(i==4&&j=0))continue;if(*pmin〉*(p+5*i+j))pmin二p+5*i+j;}}temp=*pmin;*pmin=*(p+24);*(p+24)二temp;运行结杲:分析与思考:change函数实现元素值交换。找出最人最小之,最人值与中

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。