作业5 指针应用1
1、自学教材 第8章 指针,回答以下问题:
- 变量、内存单元和地址之间是什么关系?
- 如何定义指针变量,怎样才能使用指针变量?
- 什么是指针变量的初始化?
- 指针变量的基本运算有哪些?如何使用指针操作所指向的变量?
- 指针作为函数参数的作用是什么?
- 如何使用指针实现函数调用返回多个值?
- 如何利用指针实现内存的动态分配?
答:a,定义一个变量,在编译时就会根据该变量的类型给它分配相应大小的内存单元,用地址存取。
b,类型名 *指针变量名
c,使用该运算符取得一个变量的地址,并将其赋值给指针变量
d,取地址运算,间接访问运算,赋值运算
e,将一个变量的地址传送到另一个变量中去
f,被调函数中用形参指针分别接收地址
2、设计一个程序计算输入的两个数的和与差,要求自定义一个函数 sum_diff(float op1, float op2, float *psum, float *pdiff),其中 op1 和 op2 是输入的两个数,*psum 和*pdiff 是计算得出的和与差。
#include<stdio.h> void sum_diff(float op1,float op2,float *psum,float *pdiff) //定义函数 { *psum=op1+op2; //定义指向浮点型的指针求和与差 *pdiff=op1-op2; return ; } int main() //调用函数 { float op1,op2,psum,pdiff; printf("please input op1 and op2:\n"); //从键盘输入两个数字 scanf_s("%f %f",&op1,&op2); sum_diff(op1,op2,&psum,&pdiff); printf("*psum=%f\n *pdiff=%f\n",psum,pdiff); //输出结果 }