文档详情

南京邮电大学C语言期末试卷及答案.doc

发布:2018-01-25约6.23千字共10页下载文档
文本预览下载声明
模拟试卷A 一、单选题 1、C语言中运算对象一定不能是double类型的运算符是 ___ 。              A、 %= B、 / C、= D、= 2、能正确表达数学逻辑关系0a1或0b1的c语言表达式是 ___。 A、(0a)(a1)||(0b)(b1) B、((0a)||(a1))((0b)||(b1)) C、(0a1)(0b1) D、(0a1)||(0b1) 3、设有以下变量均为int类型,则值不等于7的表达式是 ___。 A、(x=y=6,x+y,x+1) B、(x=y=6,x+y,y+1) C、(x=6,x+1,y=6,x+y) D、(y=6,y+1,x=y,x+1) 4、下列while循环体中printf语句将执行 ___。 int i= 3; while(--i) printf(%d, i); A、 3次 B、 2次 C、 0次 D、无限次 5、有语句定义:int i, j; 则以下程序段中printf的执行次数是 ___。 for (i=3; i; i--) for (j=0;j2;j++) {printf(%d,i*j); } A、9 B、4 C、0 D、6 6、int a,b,c; 语句if(ab) c=0; else c=1; 等价于 ___。 A、 c=(ab)?1:0; B、c=ab; C、c=a=b; D、以上均不是 7、有如下定义语句:int a, b=5, *p=a; 则能完成a=b赋值功能的语句是 ___。 A、a=*p; B、*p=*b; C、a=b; D、*p =*p; 8、设int *ptr, x, array[5]={5,4,3,2,1}; ptr=array; 能使x的值为3的语句是 ___。 A、 x=array[3] B、 x=*(array+3); C、 x=*(ptr+2); D、array+=2; x=*array; 9、有函数原型为void f(int,int *);主函数中有变量定义:int a,*p=a,b[10]; 则下列几种调用错误的是 ___。 A、f(a,p); B、f(*p,b); C、f(b,a); D、f(*p,p); 10、若有宏定义如下: #define M 5 #define N M + 1 #define L N*M / 2 则执行语句printf(%d,%d,L,M);后,输出结果是 ___。 A、7,6 B、 12,6 C、12,5 D、7,5 11、若有以下结构体定义,选择 ___赋值是正确的。 struct { int x , y ; }vs; A、.x = 10; B、struct s1 = {10,20}; C、struct vs= {10,20}; D、vs..x=10; 12、有定义:char a[80]= ABC,b[80]= PLAY,则正确的输出语句是 ___。 A、puts(a,b); B、printf(%s,%sa[],b[]); C、putchar(a,b); D、puts(a);puts(b); 13、设有语句int a[3][2],下面 ___不能表示元素a[i][j]。 A、*(a[i]+j) B、*(*(a+i)+j) C、*(a+i*2+j) D、*(*a+i*2+j) 14、下面各程序段能够正确实现两个字符串p、q交换的是 ___。 A、char p[]=glorious,q[]=leader,t[9]; strcpy(t,p); strcpy(p,q); strcpy(q,t); B、char p[]=glorious,q[]=leader,*t; t=p; p=q; q=t; C、char *p=glorious,*q=leader,*t; t=p; p=q; q=t; D、char p[]=glorious,q[]=leader,t; int i; for(i=0;p[i]!= \0;i++) {t=p[i]; p[i]=q[i]; q[i]=t;} 15、若要用
显示全部
相似文档