专题十九 指向简单变量的指针 模拟题-山东省职教高考电子信息-《编程语言基础》专题复习讲练测(解析版+原卷版)

2023-08-16
| 2份
| 7页
| 105人阅读
| 0人下载

内容正文:

专题十九 指向简单变量的指针 1、 选择题 1.分析下面函数,以下说法正确的是( )。 swap(int *p1,int *p2) { int *p; *p=*p1; *p1=*p2; *p2=*p; } A.交换*p1和*p2的值 B. 正确,但无法改变*p1和*p2的值 C. 交换*p1和*p2的地址 D. 可能造成系统故障,因为使用了空指针 2.变量的指针,其含义是指该变量的( ) A. 值 B. 地址 C. 名 D. 一个标志. 3.若有以下定义和语句: double r=99 , *p=&r ; *p=r ; 则以下正确的叙述是( )。 A. 以上两处的*p 含义相同,都说明给指针变量p 赋值 B. 在"double r=99,*p=&r;"中,把r 的地址赋值给了p 所指的存储单元 C. 语句"*p=r;"把变量r 的值赋给指针变量p D. 语句"*p=r;"取变量r 的值放回r 中 4.对于类型相同的两个指针变量之间,不能进行的运算是 。 A. < B. = C. + D. – 5.以下程序中调用scanf函数给变量a输入数值的方法是错误的,其锴误原因是( ) main( ) {int*p,*q,a,b; p= &a; printf("input a:"); scanf(" %d", * p); ..... } A. *p表示的是指针变量p的地址 B. *p表示的是变量a的值,而不是变量a的地址 C. * p表示的是指针变量p的值 D. *p只能用来说明p是一个指针变量 6.若有语句int *p, a=10; p=&a;下面均代表地址的一组选项是( )。 A. a, p,*&a B. &*a, a,*p C. *&p, *p, &a D. &a, &*p, p 二、简答题 1.读程序题,写出程序运行的结果。 #include <stdio.h> void main() { int *p1,*p2,*p; int a=5,b=8; p1=&a; p2=&b; if(a<b) { p=p1; p1=p2; p2=p; } printf("%d,%d ",*p1,*p2); printf("%d,%d ",a,b); } 2. 写出下列程序的输出结果 #include <stdio.h> main{ ) { int *p,a=10,b=1; p= &a; a=*p+b; printf("%d" ,a); } 原创精品资源学科网独家享有版权,侵权必究! $$ 专题十九 指向简单变量的指针 1、 选择题 1.分析下面函数,以下说法正确的是( )。 swap(int *p1,int *p2) { int *p; *p=*p1; *p1=*p2; *p2=*p; } A. 交换*p1和*p2的值 B. 正确,但无法改变*p1和*p2的值 C. 交换*p1和*p2的地址 D. 可能造成系统故障,因为使用了空指针 答案:D 解析:指针变量p未指向某个空间,为空指针,编译不通过。 2.变量的指针,其含义是指该变量的( ) A. 值 B.地址 C.名 D.一个标志. 答案:B 解析:本题考察指针的概念,变量的指针即为该变量的地址。 3.若有以下定义和语句: double r=99 , *p=&r ; *p=r ; 则以下正确的叙述是( )。 A. 以上两处的*p 含义相同,都说明给指针变量p 赋值 B. 在"double r=99,*p=&r;"中,把r 的地址赋值给了p 所指的存储单元 C. 语句"*p=r;"把变量r 的值赋给指针变量p D. 语句"*p=r;"取变量r 的值放回r 中 答案:D 解析:double r=99 , *p=&r;是将r的地址存入指针变量p中;而*p=r;语句是将r的值赋值给p所指向的内存空间。 4.对于类型相同的两个指针变量之间,不能进行的运算是 。 A. < B. = C. + D. – 答案:A 解析:指针变量存放的是地址,地址不能进行比较。 5.以下程序中调用scanf函数给变量a输入数值的方法是错误的,其锴误原因是( ) main( ) {int*p

资源预览图

专题十九   指向简单变量的指针 模拟题-山东省职教高考电子信息-《编程语言基础》专题复习讲练测(解析版+原卷版)
1
所属专辑
由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。