作业 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> int main(void) { void sum_diff(float op1,float op2,float *psum,float *pdiff); float psum,pdiff; float op1,op2; //输入op1,op2,并且是float,所以用%f; printf("输入:"); scanf("%f%f",&op1,&op2); //调用自定义函数; sum_diff(op1,op2,&psum,&pdiff); printf("*psum=%f,*pdiff=%f",psum,pdiff); return 0; } //已经使用了指针指示结果。所以不需要返回值。 void sum_diff(float op1,float op2,float *psum,float *pdiff) { *psum=op1+op2; *pdiff=op1-op2; }