第九章 指针:(一)内容提要 本章讨论了C语言中指针的含义、指针的定义格式、指针与其它类型数据的关系、指针的使用方法;通过指针的定义和使用,讨论了C语言中各种标准类型数据在内存中的存储地址;分析了指针与地址的关系。(二)学习目标1、理解C语言中指针的含义;2、学会C语言中指针的定义、赋值、运算和使用方法;3、理解C语言中指针与其它标准数据类型数据的关系;4、理解C语言中指针与数组名、数组元素的关系;5、理解C语言函数中指针作参数与标准数据类型的数据作参数的不同。9.1地址与指针:1、变量的地址2、&运算符号3、变量的值[单选题]有下列程序段,程序段运行后的输出结果是( )。int t[]={0,1,2,3,4,5,6,7,8,9}, *p; p=t; printf("%dn", *p+9);
9.2指针变量的定义:1、指针变量的定义2、*运算符号3、指针变量的使用原则
9.3指针变量的引用:1、直接访问2、间接访问
9.4指针变量作为函数参数:1、指针变量做函数参数间接修改目标变量2、指针变量做函数参数修改指针变量
9.5指针与数组:指向数组元素的指针:1、下标法表示数组元素2、固定指针法表示数组元素3、游动指针法表示数组元素
9.6指针与数组:做参数:1、数组名做函数参数2、指针变量做函数参数
选项:[9, 10, 0, 1]
[单选题]若已定义int a=5; 下列对(1)、(2)两个语句的正确解释是( )(1) int *p=&a; (2) *p=a;选项:[语句(1)和语句(2)语句都是把变量a的地址值赋给指针变量p。, 语句(1)和语句(2)中的*p含义相同,都表示给指针变量p赋值。, 语句(1)是对p进行说明的同时进行初始化,使p指向a;语句(2)是将a的值赋给p指的空间。, 语句(1)是对p进行说明的同时进行初始化,使p指向a;语句(2)是将a的值赋给指针变量p。]
[判断题]
若有下列语句:
int a[4]={1,2,3,4},*p;
p=&a[2];
则*p的值是3
选项:[错, 对]
[判断题]若有下列语句:int a[4]={1,2,3,4},*p;p=a;则*p的值是3。
选项:[错, 对]
[单选题]变量的指针是指该变量的( )。选项:[值, 名, 别名, 首地址]
[单选题]下列程序中,主函数调用findmax函数返回数组中的最大值。在下划线处应填入的是( )。#include <stdio.h>findmax( int *a, int n){ int *p, *s; for (p=a, s=a; p-a<n; p++) if(__________) s=p; return (*s);}int main(){ int x[5]={12,21,13,6,18}; printf("%dn", findmax(x,5)); return 0;}
选项:[p>s , *p>*s , p-a>p-s , a[p]>a[s]]
[单选题]若有说明:int a=2,*p=&a,*q=p;,则以下非法的赋值语句是( )。
选项:[q=a, p=q, a=*q, *p=*q]
[判断题]有下列程序段,程序段运行后的输出结果是10( )。 int *p,n; n=10; p=&n; n=*p+10; printf("%dn", *p);
选项:[对, 错]
[判断题]int *p;此时*是一个运算符号,表示间接访问p所指向的变量。选项:[对, 错]
[单选题]有下列程序,程序运行后的输出结果是( )。#include <stdio.h>void fun( int *x,int *y);int main(){ int x=1,y=2; fun(&y,&x); printf("%d %d",x,y); return 0;}void fun( int *x,int *y){ printf("%d%d",*x,*y); *x=3;*y=4;}
选项:[121 2
, 214 3, 123 4
, 211 2
]
温馨提示支付 ¥1.00 元后可查看付费内容,请先翻页预览!