使用指针处理数组.doc

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
}
调试程序时注意参数传递的是数值还是地址。
B
题)
要求:每道题目分别书写程序,试运行(如何输入,结果如何)。
题目(1):编写用指针变量作为函数参数实现两个数的交换的函数,主函数输入两个个 数都为10的数组A, B,调用所编写的函数交换数组A, B中对应元素的值。
题目(2):编写用指针变量作为函数参数求数组的最小值、最大值和平均值的函数,主 函数输入个数都为10的数组,调用所编写的函数并输出该数组的最小值、最大值和平 均值。
题目(2):调试下列程序,使之具有如下功能:任意输入2个数,调用两个函数分别求:
(1)2个数的和;
(2)2个数交换值。
要求用函数指针调用这两个函数,结果在主函数中输出。
#include "format.h"
void main()
( inta,b,c,(*p)();
scanf(”%d,%d”,&a,&b);
输出sum=, a=, b=
sum(int a, int b jnt *c
* c=a+b
return *c
B题目1:
定义整型a[N],b[N],i,*pl,*p2
输出please enter 10 numbers fbr a:
pl=a
p 1 va+N
打印pl
pl++
输出please enter 10 numbers for b:
3.
(用文字或流程图说明。)
A题目1:
定义整型
p=a
输出"please enter 12 numbers :Hj=0
j<!2
打印p
p+1
j+1
p=a, j=0
j<12
输出*p
p+1
输出换行
j++
题目2:
定义整型a,b,c,(*p)()
打印a, b
p=sum
p(a,b,&c)
p=swap
p(&a,&b)
p2=b
p2vb+N
打印p2
p2++
输出after swap:
swap(&a,&b)
pl=a;
p 1 <a+N
输出pl的内容
pl++
输出换行
p2=b;
p2<b+N
void main()
( intj,k,a[12],*p;
for(j=0;j<12;j++)
scanf(”%d”,p++);
for(j=0;j<12;j++)
( printf("%d”,*p++);
if(j%4 == o)printf(H\nn);
)
}
调试该程序时将a设置为一个“watch”,数组a所有元素的值在一行显示出来。调试 时注意指针变量指向哪个目标变量。
《程序设计基础》实验报告
实验名称:使用指针处理数组
教师审批签字:
实验
1.
(1)掌握指针变量的定义与引用。
(2)掌握指针与变量、指针与数组的关系。
(3)掌握用数组指针作为函数参数的方法。
2.
A:
题目(1):调试下列程序,使之具有如下功能:用指针法输入12个数,然后按每行4个数输出。写出调试过程。
#include "format.h"
p=sum;
*p(a,b,c);
p=swap;
*p(a,b);
printf(,,sum=%d\n',,c);
printf("a=%d,b=%d\n”,a,b);
sum(int a, int b, int c)
( c=a+b;
}
swap(int a, int b)
{ int t;
tLeabharlann Baidua;a=b;b=t;
相关文档
最新文档