新建
上传
首页
助手
最?/div>
资料?/div>
工具

 

1 

C

语言指针练习题及答案

 

一、选择?/p>

 

1. 

变量的指针,其含义是指该变量?/p>

____. 

 

 

 

 

 

a)

?/p>

 

 

 

 

 

 

 

 

 

 

 

 

 

 

b)

地址

 

 

 

c)

?/p>

 

 

 

 

 

 

 

 

 

 

 

 

 

 

d)

一个标?/p>

 

2

.若有语?/p>

int *point,a=4;

?/p>

point=&a;

下面均代表地址的一组选项?/p>

__ _. 

 

 

a)a,point,*&a 

 

 

 

 

 

 

 

 

 

 

 

 

b)&*a,&a,*point 

 

 

c)*&point,*point,&a 

 

 

 

 

 

 

d)

&a,&*point ,point 

3

.若有说?/p>

;int *p,m=5,n;

以下正确的程序段的是

________. 

 

a)p=&n; 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

b)p=&n; 

 

 

 

scanf("%d",&p); 

 

 

 

 

 

 

 

scanf("%d",*p); 

 

c)scanf("%d",&n); 

 

 

 

 

 

 

d)

p=&n; 

 

 

 

*p=n; 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

*p=m; 

4. 

以下程序中调?/p>

scanf

函数给变?/p>

a

输入数值的方法是错误的?/p>

其错误原因是

__ _____. 

main() 

{ 

 

int *p,*q,a,b; 

p=&a; 

printf(

?/p>

input a:

?/p>

); 

scanf(

?/p>

%d

?/p>

,*p); 

…?/p>

 

} 

a)*p

表示的是指针变量

p

的地址

 

b)

*p

表示的是变量

a

的值,而不是变?/p>

a

的地址

 

c)*p

表示的是指针变量

p

的?/p>

 

d)*p

只能用来说明

p

是一个指针变?/p>

 

5. 

已有变量定义和函数调用语句:

int 

a=25; 

print_value(&a); 

下面函数的正确输

出结果是

______. 

void print_value(int *x) 

{ 

 

 

printf(

?/p>

%d\n

?/p>

,++*x);} 

a)23 

 

 

 

 

 

b)24 

 

 

 

 

c

)25 

 

 

 

 

d)

26 

6.

若有说明?/p>

long *p,a;

则不能通过

scanf

语句正确给输入项读入数据的程序段?/p>

 

 

 

A)

 *p=&a

?/p>

 

 

scanf("%ld"

?/p>

p)

?/p>

 

 

 

B) p=(long *)malloc(8)

?/p>

 

 

scanf("%ld"

?/p>

p)

?/p>

 

 

 

C) scanf("%ld"

?/p>

p=&a)

?/p>

 

 

 

D) scanf("%ld"

?/p>

&a)

?/p>

 

7.

有以下程?/p>

 

 

 

 

#include<stdio.h> 

 

 

 

main() 

{ 

 

int m=1,n=2,*p=&m,*q=&n,*r; 

 

 

 

r=p;p=q;q=r; 

 

 

 

printf("%d,%d,%d,%d\n",m,n,*p,*q); 

}

程序运行后的输出结果?/p>

 

 

Ͼλ
新建
上传
首页
助手
最?/div>
资料?/div>
工具

 

1 

C

语言指针练习题及答案

 

一、选择?/p>

 

1. 

变量的指针,其含义是指该变量?/p>

____. 

 

 

 

 

 

a)

?/p>

 

 

 

 

 

 

 

 

 

 

 

 

 

 

b)

地址

 

 

 

c)

?/p>

 

 

 

 

 

 

 

 

 

 

 

 

 

 

d)

一个标?/p>

 

2

.若有语?/p>

int *point,a=4;

?/p>

point=&a;

下面均代表地址的一组选项?/p>

__ _. 

 

 

a)a,point,*&a 

 

 

 

 

 

 

 

 

 

 

 

 

b)&*a,&a,*point 

 

 

c)*&point,*point,&a 

 

 

 

 

 

 

d)

&a,&*point ,point 

3

.若有说?/p>

;int *p,m=5,n;

以下正确的程序段的是

________. 

 

a)p=&n; 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

b)p=&n; 

 

 

 

scanf("%d",&p); 

 

 

 

 

 

 

 

scanf("%d",*p); 

 

c)scanf("%d",&n); 

 

 

 

 

 

 

d)

p=&n; 

 

 

 

*p=n; 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

*p=m; 

4. 

以下程序中调?/p>

scanf

函数给变?/p>

a

输入数值的方法是错误的?/p>

其错误原因是

__ _____. 

main() 

{ 

 

int *p,*q,a,b; 

p=&a; 

printf(

?/p>

input a:

?/p>

); 

scanf(

?/p>

%d

?/p>

,*p); 

…?/p>

 

} 

a)*p

表示的是指针变量

p

的地址

 

b)

*p

表示的是变量

a

的值,而不是变?/p>

a

的地址

 

c)*p

表示的是指针变量

p

的?/p>

 

d)*p

只能用来说明

p

是一个指针变?/p>

 

5. 

已有变量定义和函数调用语句:

int 

a=25; 

print_value(&a); 

下面函数的正确输

出结果是

______. 

void print_value(int *x) 

{ 

 

 

printf(

?/p>

%d\n

?/p>

,++*x);} 

a)23 

 

 

 

 

 

b)24 

 

 

 

 

c

)25 

 

 

 

 

d)

26 

6.

若有说明?/p>

long *p,a;

则不能通过

scanf

语句正确给输入项读入数据的程序段?/p>

 

 

 

A)

 *p=&a

?/p>

 

 

scanf("%ld"

?/p>

p)

?/p>

 

 

 

B) p=(long *)malloc(8)

?/p>

 

 

scanf("%ld"

?/p>

p)

?/p>

 

 

 

C) scanf("%ld"

?/p>

p=&a)

?/p>

 

 

 

D) scanf("%ld"

?/p>

&a)

?/p>

 

7.

有以下程?/p>

 

 

 

 

#include<stdio.h> 

 

 

 

main() 

{ 

 

int m=1,n=2,*p=&m,*q=&n,*r; 

 

 

 

r=p;p=q;q=r; 

 

 

 

printf("%d,%d,%d,%d\n",m,n,*p,*q); 

}

程序运行后的输出结果?/p>

 

 

">
新建
上传
首页
助手
最?/div>
资料?/div>
工具

 

1 

C

语言指针练习题及答案

 

一、选择?/p>

 

1. 

变量的指针,其含义是指该变量?/p>

____. 

 

 

 

 

 

a)

?/p>

 

 

 

 

 

 

 

 

 

 

 

 

 

 

b)

地址

 

 

 

c)

?/p>

 

 

 

 

 

 

 

 

 

 

 

 

 

 

d)

一个标?/p>

 

2

.若有语?/p>

int *point,a=4;

?/p>

point=&a;

下面均代表地址的一组选项?/p>

__ _. 

 

 

a)a,point,*&a 

 

 

 

 

 

 

 

 

 

 

 

 

b)&*a,&a,*point 

 

 

c)*&point,*point,&a 

 

 

 

 

 

 

d)

&a,&*point ,point 

3

.若有说?/p>

;int *p,m=5,n;

以下正确的程序段的是

________. 

 

a)p=&n; 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

b)p=&n; 

 

 

 

scanf("%d",&p); 

 

 

 

 

 

 

 

scanf("%d",*p); 

 

c)scanf("%d",&n); 

 

 

 

 

 

 

d)

p=&n; 

 

 

 

*p=n; 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

*p=m; 

4. 

以下程序中调?/p>

scanf

函数给变?/p>

a

输入数值的方法是错误的?/p>

其错误原因是

__ _____. 

main() 

{ 

 

int *p,*q,a,b; 

p=&a; 

printf(

?/p>

input a:

?/p>

); 

scanf(

?/p>

%d

?/p>

,*p); 

…?/p>

 

} 

a)*p

表示的是指针变量

p

的地址

 

b)

*p

表示的是变量

a

的值,而不是变?/p>

a

的地址

 

c)*p

表示的是指针变量

p

的?/p>

 

d)*p

只能用来说明

p

是一个指针变?/p>

 

5. 

已有变量定义和函数调用语句:

int 

a=25; 

print_value(&a); 

下面函数的正确输

出结果是

______. 

void print_value(int *x) 

{ 

 

 

printf(

?/p>

%d\n

?/p>

,++*x);} 

a)23 

 

 

 

 

 

b)24 

 

 

 

 

c

)25 

 

 

 

 

d)

26 

6.

若有说明?/p>

long *p,a;

则不能通过

scanf

语句正确给输入项读入数据的程序段?/p>

 

 

 

A)

 *p=&a

?/p>

 

 

scanf("%ld"

?/p>

p)

?/p>

 

 

 

B) p=(long *)malloc(8)

?/p>

 

 

scanf("%ld"

?/p>

p)

?/p>

 

 

 

C) scanf("%ld"

?/p>

p=&a)

?/p>

 

 

 

D) scanf("%ld"

?/p>

&a)

?/p>

 

7.

有以下程?/p>

 

 

 

 

#include<stdio.h> 

 

 

 

main() 

{ 

 

int m=1,n=2,*p=&m,*q=&n,*r; 

 

 

 

r=p;p=q;q=r; 

 

 

 

printf("%d,%d,%d,%d\n",m,n,*p,*q); 

}

程序运行后的输出结果?/p>

 

 

Ͼλ">
Ͼλ
Ŀ

C语言指针经典练习?及答?- 百度文库
新建
上传
首页
助手
最?/div>
资料?/div>
工具

 

1 

C

语言指针练习题及答案

 

一、选择?/p>

 

1. 

变量的指针,其含义是指该变量?/p>

____. 

 

 

 

 

 

a)

?/p>

 

 

 

 

 

 

 

 

 

 

 

 

 

 

b)

地址

 

 

 

c)

?/p>

 

 

 

 

 

 

 

 

 

 

 

 

 

 

d)

一个标?/p>

 

2

.若有语?/p>

int *point,a=4;

?/p>

point=&a;

下面均代表地址的一组选项?/p>

__ _. 

 

 

a)a,point,*&a 

 

 

 

 

 

 

 

 

 

 

 

 

b)&*a,&a,*point 

 

 

c)*&point,*point,&a 

 

 

 

 

 

 

d)

&a,&*point ,point 

3

.若有说?/p>

;int *p,m=5,n;

以下正确的程序段的是

________. 

 

a)p=&n; 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

b)p=&n; 

 

 

 

scanf("%d",&p); 

 

 

 

 

 

 

 

scanf("%d",*p); 

 

c)scanf("%d",&n); 

 

 

 

 

 

 

d)

p=&n; 

 

 

 

*p=n; 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

*p=m; 

4. 

以下程序中调?/p>

scanf

函数给变?/p>

a

输入数值的方法是错误的?/p>

其错误原因是

__ _____. 

main() 

{ 

 

int *p,*q,a,b; 

p=&a; 

printf(

?/p>

input a:

?/p>

); 

scanf(

?/p>

%d

?/p>

,*p); 

…?/p>

 

} 

a)*p

表示的是指针变量

p

的地址

 

b)

*p

表示的是变量

a

的值,而不是变?/p>

a

的地址

 

c)*p

表示的是指针变量

p

的?/p>

 

d)*p

只能用来说明

p

是一个指针变?/p>

 

5. 

已有变量定义和函数调用语句:

int 

a=25; 

print_value(&a); 

下面函数的正确输

出结果是

______. 

void print_value(int *x) 

{ 

 

 

printf(

?/p>

%d\n

?/p>

,++*x);} 

a)23 

 

 

 

 

 

b)24 

 

 

 

 

c

)25 

 

 

 

 

d)

26 

6.

若有说明?/p>

long *p,a;

则不能通过

scanf

语句正确给输入项读入数据的程序段?/p>

 

 

 

A)

 *p=&a

?/p>

 

 

scanf("%ld"

?/p>

p)

?/p>

 

 

 

B) p=(long *)malloc(8)

?/p>

 

 

scanf("%ld"

?/p>

p)

?/p>

 

 

 

C) scanf("%ld"

?/p>

p=&a)

?/p>

 

 

 

D) scanf("%ld"

?/p>

&a)

?/p>

 

7.

有以下程?/p>

 

 

 

 

#include<stdio.h> 

 

 

 

main() 

{ 

 

int m=1,n=2,*p=&m,*q=&n,*r; 

 

 

 

r=p;p=q;q=r; 

 

 

 

printf("%d,%d,%d,%d\n",m,n,*p,*q); 

}

程序运行后的输出结果?/p>

 

 



ļ׺.doc޸Ϊ.docĶ

  • ʡרԴѧרϰ
  • Уγ̸Ҫ
  • 繤Ӽ ( 1 )
  • ϺţӢ꼶4Aв
  • లȫ (2)
  • ȫƶȼع淶
  • ȫӦԤ()
  • Сѧѧ̰꼶²̽԰ü̽˷Ĺȫ׽̰ģ巶
  • ܿ·ϵ豸װ̼ռ¼ı
  • ҿŴѧVisualBasicơοһ

վ

԰ Ͼλ
ϵͷ779662525#qq.com(#滻Ϊ@)