第8章 指针-课内实验挨靠【顾保磊】
中国地质大学江城学院 C语言课内实验报告8
专 业 学号 姓名 指导教师 实验名称 成绩
一、实验目的 (1)掌握指针的概念、指针变量的定义。 (2)掌握指针的运算。 (3)掌握指针与数组的关系。 (4)掌握指针与函数的关系。 (5)Y解指向函数的指针。 (6)Y解指向指针变量的指针。 二、预习内容 (1)指针变量的定义、赋值、操作(存储单元的引用、移动指针的操作、指针的比较),取地址运算符&和间接运算符+的功能及用法,数组元素的多种表示形式。 (2)指针是种特殊的变量,它具有变量的三要素(即变量名、变量值、变量类型),要注意指针的值及(基)类型。指针的值是某个变量的地址值,它的(基)类型是它所指向的变量的类型。 *:说明符,说明某一变量是指针。 &:对变量取地址。 三、实验内容 (1)先分析程序的运行结果,再上机验证。 #include
1
第8章 指针-课内实验挨靠【顾保磊】 int main() {int a[]={1,2,3}; int *p,i; p=a; for(i=0;i<3;i++) printf(\return 0; } 输出: 1 1 1 1 2 2 2 2 3 3 3 3 ①先静态分析程序运行的结果,再与上机运行的结果比较是否一致,若不一致分析产生的原因,特别注意输出的格式是如何控制的。 答:静态,动态结果一致。 ②通过本题的练习,希望学生掌握数组元素与指向数组的指针是不同的。 a[i]:表示数组的下标为i的元素。a[i]←p[i] ←*(p+i) ←*(a+i)。a是数组名,表示数组首地址,(p+i)表示数组中第i个元素的地址,*(p+i)相当于a[i]。 (3)先分析程序的运行结果,再上机验证。 #include
2
第8章 指针-课内实验挨靠【顾保磊】 输出: 1245120 4199001 1 4394656 4394448 2367460 1243068 2147315712 0 -2142224440 修改程序: #include
3