下笔如有神读书破万卷1.选择题:()。1)如果x是整型变量,则合法的形式是(*&xD.C.&*x*xA.&(x+5)B.数组元素的正不是对aa[10]={0,1,2,3,4,5,6,7,8,9},*p=a;则()(2)若有语句int)。0≤i<10确引用(其中*(&a[i]).D*(*(a+i))C.a[p-a]A.p[i]B.。3)以下程序的输出结果是()(#includevoidmain(){inta[3]={10,15,20};//a[0]=10,a[1]=15,a[2]=20地址取a[1]a[0]int*p1=a,*p2=&a[1];//p1取地址,p2*p1=*(p2-1)+5;//a[0]=15,a[1]=15,a[2]=20*(p1+1)=*p1-5;//a[0]=15,a[1]=10,a[2]=2printf(%d,a[1])};20.DC.15.A.5B10()。m(4)执行以下程序段后,的值为5,6}};intm,*p=&a[0][0];m=(*p)*(*(p+2))*(*(p+4));A.15B.14C.13D.12(5)以下程序的输出结果是()。#includevoidfun(intx,inty,int*cp,int*dp){cp=x+y;//*cp=30+50=80dp=x-y;//*dp=30-50=-20}voidmain(){inta,b,c,d;a=30,b=50;fun(a,b,&c,&d);printf(%d,%d,c,d);}A.50,30B.30,50C.80,-20D.80,20(6)要求函数的功能是交换x和y中的值,且通过正确调用返回交换结果。能正确执行此功能的函数是()。A.funa(int*x,int*y)B.funb(intx,inty){int*p=newint;{intt;p=*x;t=x;*x=*y;x=y;*y=*p;}y=t;}读书破万卷下笔如有神C.func(int*x,int*y)D.fund(intx,inty){*x=*y;{*x=*x+*y;*y=*x;*y=*x-*y;}*x=*x-*y;}(7)以下程序的输出结果是()。#includevoidmain(){char*s=Q34211;intv1=0,v2=0,v3=0,v4=0;for(intk=0;s[k];k++)switch(s[k]){default:v4++;case'1':v1++;case'3':v3++;case'2':v2++;}printf(%d%d%d%d\n,v1,v2,v3,v4)};A.4,2,1,1B.4,9,3,1C.5,8,6,1D.8,8,8,8(8)设有如下定义,下面关于ptr正确叙述是()。int(*ptr)();A.ptr是指向一维数组的指针变量B.ptr是指向int型数据的指针变量C.ptr是指向函数的指针,该函数返回一个int型数据D.ptr是一个函数名,该函数的返回值是指向int型数据的指针9,以下关于指针的叙述正确是A)所有类型的指针变量所占内存的大小是一样的B)指针变量所占内存的大小与其类型有关,char型指针变量只占1个字节,double型指针变量占8个字节C)指针变量可直接指向任何类型的变量,而不会出现编译或运行错误D)指针变量既可以直接指向结构体,也可直接指向结构体中某个成员,而不会出现编译或运行错误10,以下定义语句中正确的是A)inta=b=0;B)charA=65+1,b='b';C)floata=1,*b=&a,*c=&b;D)doublea=0.0;b=1.1;11,以下叙述中正确的是A)如果p是指针变量,则&p是不合法的表达式B)如果p是指针变量,则*p表示变量p的地址值C)在对指针进行加、减算术运算时,数字1表示1个存储单元的长度的效果是一样的*(p+1)和*p+1是指针变量,则p如果D)读书破万卷下笔如有神12,有以下程序#include<stdio.h>voidf(int*p,int*q);main(){intm=1,n=2,*r=&m;f(r,&n);printf(%d,%d,m,n);}voidf(int*p,int*q){p=p+1;*q=*q+1;}程序运行后的输出结果是A)2,3B)1,3C)1,4D)1,213,以下对指针变量的操作中,错误的程序段是A)intx=0,*p;*p=x;B)intx=1,*p,*q=&x;p=q;C)int*p,*q;q=p=NULL;D)intp,*q;q=&p;14,有以下程序#include<stdio.h>main(){char*p1=0;int*p2=0;float*p3=0;printf(%d,%d,%d\n,sizeof(p1),sizeof(p2),sizeof(p3));}程序运行后的输出结果是A)1,4,8B)4,4,4C)1,2,4D)1,1,415,有以下程序#include<stdio.h>voidfun(char**p){++p;printf(%s\n,*p);}main(){char*a[]={Morning,Afternoon,Evening,Night};fun(a);}程序的运行结果是A)AfternoonB)fternoonC)MorningD)orning下笔如有神读书破万卷二,填空,有以下程序16#include<stdio.h>char*a=you;char*b=WelcomeyoutoBeijing!;main(){char*p;p=b;while(*p!=*a)p++;printf(%s\n,p);}youtoBeijing!程序运行后的输出结果是17,有以下函数intfun(char*ps){char*p;p=ps;if(*ps==0)return0;while(*++p);return(p-ps);}计算字符串的长度该函数的功能是,有以下程序18#include<stdio.h>main()},i,*q=&x[0][0];for(i=0;i<2;i++){if(i==0)x[i][i+1]=*q+1;else++q;printf(%d,*q);}printf(\);}23程序的运行结果是读书破万卷下笔如有神19,有以下程序#include<stdio.h>voidf(intx...