网友您好, 请在下方输入框内输入要搜索的题目:
题目内容
(请给出正确答案)
单选题
设变量p是指针变量,语句p=NULL;是给指针变量赋NULL值,它等价于( )。
A
p= ;
B
p='0';
C
p=0;
D
p='';
参考答案
参考解析
解析:
NULL的ASCII码值为0,p=NULL等价于p='\0';或p=0。答案选择C选项。
NULL的ASCII码值为0,p=NULL等价于p='\0';或p=0。答案选择C选项。
更多 “单选题设变量p是指针变量,语句p=NULL;是给指针变量赋NULL值,它等价于( )。A p= ;B p='0';C p=0;D p='';” 相关考题
考题
若已定义int a=5 下面对(1)、(2)两个语句的正确解释是()。(1) int *p=(2)变量a的值赋给指针变量p。D.(1)在对p进行说明的同时进行初始化,使p指向a;(2)将变量a的值赋予*p。
考题
若有定义float a=25,b,*p=b;,则下列对赋值语句*p=a;和p=a;的正确解释为( )。A.两个语句都是将变量a的值赋予变量pB.*p=a是使p指向变量a,而p=a是将变量a的值赋予变量指针pC.*p=a是将变量a的值赋予变量b,而p=a是使p指向变量aD.两个语句都是使p指向变量a
考题
以下程序中调用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是一个指针变量
考题
在下列叙述中,正确的一条是( )A.语句int *pt中的*pt是指针变量名B.语句"int *p=a;"等价于"int *p;p=a[0];”C.运算符*和都是取变量地址的运算符D.已知指针变量p指向变量a,则a和*p值相同,都是变量a的值
考题
若有以下定义和语句:“double r=99,*p=&r;*P =r;”,则以下正确的叙述是( )。A.两个*p含义相同,都说明给指针变量p赋值B.在“double r=99,*p=&r;”中,把r的地址赋值给了P所指的存储单元C.语句“*p=r;”把变量r的值赋给指针变量PD.语句“*p=r;”取变量r的值放回r中
考题
l设已有定义:floatx;,则以下对指针变量p进行定义且赋初值的语句中正确的是( )。A.float*p=S
l设已有定义:floatx;,则以下对指针变量p进行定义且赋初值的语句中正确的是( )。A.float*p=&x;B.int*p-(float)x;C.float p=&x;D.float*p=1024;
考题
若有定义“floata=25,b,*p=&b;”,则下列对赋值语句“*p=a;”和“p=&a;”的正确解释为( )。A.两个语句都是将变量a的值赋予变量pB.*p=a是使P指向变量a,而P=&a是将变量的值赋予变量指针pC.*p=a是将变量a的值赋予变量b,而&;a是使P指向变量aD.两个语句都是使p指向变量a
考题
若已定义:int x=12;对①int *p=和②*p=x;这两条语句的正确理解是()
A.语句①是在对指针变量p定义时初始化,使p指向x;而语句②是将变量x的值赋给指针变量p所指向的变量B.语句①和②中的*p含义相同,都表示给指针变量赋值C.语句①是在对指针变量p定义时初始化,使p指向x;而语句②是将变量x的值赋给指针变量pD.语句①和②的执行结果都是把变量x的地址赋给指针变量p
考题
若有如下定义: int (*p)(), *q(); 则下列说法正确的是( )A.p是一个函数名,q是一个指针变量B.p是一个指向整型变量的指针变量,q是一个指向一维数组的指针变量C.p和q是等价的,都是指针变量D.p是指向函数的指针变量,函数的返回值是整型数据;q是带回指针值的函数
考题
若有以下定义和语句; double r=99,*p=7; *p=r; 则以下正确的叙述是( )A.两处的*p含义相同,都说明给指针变量P赋值3B.在“double r=99,*p=7;*p=r;”中,把r的地址赋给了p所指的存储单元C.语句“*p=r;”把变量r的值赋给指针变量pD.语句“*p=r;”把变量r的值放回P中
考题
有如下定义语句:int a[]={1,2,3,4,5};,则对语句int * p=a;正确的描述是( )。A.语句int * p=a;定义不正确B.语句int * p=a;初始化变量p,使其指向数组对象a的第一个元素C.语句int * p=a;是把a[0]的值赋给变量pD.语句int * p=a;是把a[1]的值赋给变量p
考题
以下程序中调用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是一个指针变量
考题
若已定义inta=5;下面对(1)int*p=a;(2)*p=a;两个语句的正确解释是()A、语句(1)和(2)中的*P含义相同,都表示给指针变量p赋值B、语句(1)和语句(2)的执行结果,都是把变量a的地址值赋给指针变量pC、语句(1)在对p进行说明的同时进行初始化,使p指向a,语句(2)将变量a的值赋给指针变量pD、语句(1)在对p进行说明的同时进行初始化,使p指向a,语句(2)将变量a的值赋于*p
考题
单选题以下程序中调用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是一个指针变量
考题
单选题若已定义:int x=12;对①int *p=x;和②*p=x;这两条语句的正确理解是()A
语句①是在对指针变量p定义时初始化,使p指向x;而语句②是将变量x的值赋给指针变量p所指向的变量B
语句①和②中的*p含义相同,都表示给指针变量赋值C
语句①是在对指针变量p定义时初始化,使p指向x;而语句②是将变量x的值赋给指针变量pD
语句①和②的执行结果都是把变量x的地址赋给指针变量p
考题
单选题有以下程序
#include
main()
{
intn,*p=NULL;
*p=n;
printf(Inputn:);
scanf(%d,p);
printf(outputn:);
printf(%d,p);
}
该程序试图通过指针p为变量n读入数据并输出,但程序有多处错误,以下语句正确的是( )。
热门标签
最新试卷