全国计算机等级考试二级C语言之指针测试
一、选择题 (1)设有定义:int n1=0,n2,*p=&n2,*q=&n1;,以下赋值语句中与n2=n1;语句等价的是 A)*p=*q; B)p=q; C)*p=&n1; D)p=*q; (2)若有定义:int x=0, *p=&x;,则语句printf("%d ",*p);的输出结果是 A)随机值 B)0 C)x的地址 D)p的地址 (3) 以下定义语句中正确的是 A) char a=’A’b=’B’; B) float a=b=10.0; C) int a=10,*b=&a; D) float *a,b=&a; (4) 有以下程序 main() { int a=7,b=8,*p,*q,*r; p=&a;q=&b; r=p; p=q;q=r; printf("%d,%d,%d,%d ",*p,*q,a,b); } 程序运行后的输出结果是 A) 8,7,8,7 B) 7,8,7,8 C) 8,7,7,8 D) 7,8,8,7 (5) 设有定义:int a,*pa=&a;以下scanf语句中能正确为变量a读入数据的是 A) scanf(“%d”,pA) ; B) scanf(“%d”,A) ; C) scanf(“%d”,&pA) ; D) scanf(“%d”,*pA) ; (6) 设有定义:int n=0,*p=&n,**q=&p;则以下选项中,正确的赋值语句是 A) p=1; B) *q=2; C) q=p; D) *p=5; (7) 有以下程序 void fun(char *a, char *b) { a=b; (*a)++; } main () { char c1="A", c2="a", *p1, *p2; p1=&c1; p2=&c2; fun(p1,p2); printf(“&c&c ”,c1,c2); } 程序运行后的输出结果是 A) Ab B) aa C) Aa D) Bb (8) 若程序中已包含头文件stdio.h, 以下选项中,正确运用指针变量的程序段是 A) t *i=NULL; B) float *f=NULL; scanf("&d",f); *f=10.5; C) char t="m", *c=&t; D) long *L; *c=&t; L=‘ ’; (9) 有以下程序 #inc1ude main() { printf("%d ", NULL); } 程序运行后的输出结果是 A) 0 B) 1 C) -1 D) NULL没定义,出错 (10) 已定义以下函数 fun (int *p) { return *p: } 该函数的返回值是 A) 不确定的值 B) 形参p中存放的值 C) 形参p所指存储单元中的值 D) 形参p的地址值 首页 1 2 3 4 5 尾页 相关资料 |