使用指针的程序设计
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
调用swap完成交换。 输出交换前后的变量值进行比较。
3.编写程序,实现两个字符串拷贝的函数 strcopy。 要求:
不允许使用C的字符串函数strcpy。 目标串的长度不应该超过源串的长度。对这个
条件进行检查。 主程序中从键盘输入两个字符串。调用strcopy 函数实现字符串拷贝操作。 输出拷贝前后,两个字符串的内容。
【实验内容】
1. 编写程序,使用指针实现打印一维数组所有元 素的操作。 要求:
每行打印4个元素。 从键盘输入下面一组数据进行测试:
5,12,2,6,1,24,15,11,7,3,19,20,13,8
2.编写程序,实现交换两个变量值的操作。 要求:
使用形参为指针的函数swap完成交换功能。 主函数中,使用整型指针从键盘输入两个整数,通过
使用指针的程序设计
【实验目的】
ቤተ መጻሕፍቲ ባይዱ
1. 掌握使用指针变量的方法。 2. 掌握带有指针形参的函数的定义及调用 方法。 3.正确使用函数指针调用函数。 4.正确使用指针操作数组元素。 5.正确使用指针数组操作字符串。
int a;int swap(int *p1,int *p2) { int *p1=&a; } Int *p2=p1; void main() { int a, b; int *pointer_1=&a; int *pointer_2=&b; void main() swap(pointer_1,pointer_2); { } int *p, i, a[10]; p = a; int swap(int x, int y) for(i=0; i<10; i++) { scanf(“%d”, p++); } p = a; void main() for(i=0; i<10; i++) { printf(“%d”, *p++); } int a, b, c; int (*p)(int, int); 类型名 * 数组名[数组长度] int p= swap; (*p)[4]的区别 *p[4]与int c=(*p) (a, b); }
4.下面的程序是一个使用函数指针调用函数 的实例。阅读程序,输入、编译、连接, 运行并观察结果。体会使用函数指针调用 函数的步骤。 #include <stdio.h> int max(int x,int y) { int m=x; if (y>m) m=y; return m; }
main() { int a,b,c; int (*funp)(int,int); /*定义函数指针*/ printf("Input a,b:"); scanf("%d%d",&a,&b); funp=max; /*函数指针指向具体的函数*/ c=(*funp)(a,b); /*用函数指针调用函数*/ printf("max=%d\n",c); }