若有语句:int x=6,*p=&x;则下面正确的表达式是()

题目
单选题
若有语句:int x=6,*p=&x;则下面正确的表达式是()
A

++&x

B

(*p)--

C

&(x+5)

D

p=1000

如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

若有定义语句: int a=5; ,则表达式: a++ 的值是 【 6 】 。


正确答案:

第2题:

若有定义:int X=0,* P=&x;,则语句printf(”%d\n”,* P.的输出结果是( )。

A.随机值

B.0

C.X的地址

D.P的地址


正确答案:B
题中定义的语句等价于以下语句。故本题定义一个整型变量x和一个指向整型的指针P,并把变量X的地址赋值给P,即P为指向整型变量x的指针,则*P表示P所指向的整型变量x的数值。

第3题:

若有以下函数首部

int fun(double x[10], int *n)

则下面针对此函数的函数声明语句中正确的是

A)int fun(double x, int *n);

B)int fun(double , int );

C)int fun(double *x, int n);

D)int fun(double *, int *);


正确答案:D
答案 D
解析 : 函数首部 int fun(double x[10],int *n) 表示这个函数的返回值是整型,其第 1 个形式参数是一个双精度的一维数组,第 2 个参数是一个整型指针。在 C 语言中,一维数组的名字表示的是一维数组的地址,所以选项D是正确的。

第4题:

若有定义:“int*P,x=0,*p,p=&x;”,则语句“printf("%d\n",*p);”的输出结果是( )。

A.随机值

B.0

C.x的地址

D.P的地址


正确答案:A
*P的意思是取其指向地址的内容,P是指向x地址的指针,因此输出*p也就是输出x的内容,即0,故选择B选项。

第5题:

若有以下变量定义和函数调用语句: int a=5; fun(&a); 则执行下面函数后正确的输出结果是( )。 void fun(int*x) { cout<<++*x<<end1; }

A.3

B.4

C.5

D.6


正确答案:D
解析:fun函数中的x参数为整型指针变量。调用fun函数, &a是取a的地址,即将实际参数a的地址传递。函数fun中的*x是变量x所指的存储单元即值5。*运算符的等级高于++,所以先取值5,然后加1输出,即为6。

第6题:

若有定义语句:int x=3,y=2,z=1;则表达式x <y?x:y的值是______。


正确答案:2
2

第7题:

若有定义:int x=0,*p=&x;,则语句printf("%d\n",*p);的输出结果是 ______。

A.随机值

B.0

C.x的地址

D.p的地址


正确答案:B
解析:由定义*p=&x,p指向x的地址,*p=x,因此输出的是x的值。

第8题:

若有定义语句: int x=10; ,则表达式 x-=x+x 的值为

A)-20

B)-10

C)0

D)10


正确答案:B

第9题:

若有以下函数首部: int fun(double x[10],int *n) 则下面针对此函数的函数声明语句中正确的是( )。

A.int fun(double x, int *n);

B.int fun(double, int);

C.int fun(double *x, int n);

D.int fun(double*, int*);


正确答案:D
解析:本题中的fun函数有两个参数,一个类型是double型一维数组,另—个是int型指针。而在C语言中,一维数组用作函数参数和该数组元素的指针类型是等价的。所以本题的正确答案是选项D。

第10题:

若有以下函数首部 int fun(double x[lO],int *n) 则下面针对此函数的函数声明语句中正确的是______。

A.int fun(double x, int *n);

B.int fun(double, int);

C.int fun(double *x, int n);

D.iht fun(double*,int*);


正确答案:D
解析:函数声明可以照写已定义的函数的首部,再加一个号就成为了对函数的声明,在函数声明中也可以不写形参名,而只写形参的类型,但要保证与函数首部写法上的—致,即函数类型、函数名、参数个数、参数类型和参数顺序相同。字符数组可用指针来表示,所以选顶D正确。