2008年专升本考试C语言模拟试题(共21页)_第1页
2008年专升本考试C语言模拟试题(共21页)_第2页
2008年专升本考试C语言模拟试题(共21页)_第3页
2008年专升本考试C语言模拟试题(共21页)_第4页
2008年专升本考试C语言模拟试题(共21页)_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、精选优质文档-倾情为你奉上精选优质文档-倾情为你奉上专心-专注-专业专心-专注-专业精选优质文档-倾情为你奉上专心-专注-专业2008年专升本考试C语言模拟试题(2009-07-04 22:35:50) 标签: 分类:一单项选择题1. 以下定义语句中正确的是 (C) A)char a=Ab=B; B)float a=b=10.0; C)int a=10,*b=&a; D)float *a,b=&a;2. 下列运算符中,优先级最高的是 (A) 。A. - B. + C. & D. =3. 表达式!(x0&y0)等价于 (A) 。A. ! (x0) | ! (y0) B. !x0 | !y0 C.

2、 !x0 & !y0 D. !(x0) & ! (y0)4. 有以下程序 main() int a=666,b=888; printf(%dn,a,b); 程序运行后的输出结果是(B) A)错误信息 B)666 C)888 D)666,8885. 有以下程序 main() int i; for(i=0;i3;i+) switch(i) case 0:printf(%d,i); case 2:printf(%d,i); default:printf(%d,i); 程序运行后的输出结果是 (C) A) B) C) D)0126. 若x和y代表整型数,以下表达式中不能正确表示数学关系|x-y|10的

3、是 (C) A)abs(x-y)-10& x-y10 C)!(x-y)10D)(x-y)*(x-y)k=2; B. (*p).k=2;C. x . k=2 D. x-k=29. 不正确的赋值或赋初值的方式是 (B) 。 A. char str =”string”;B. char str10; str=”string”; C. char *p=”string”;D. char *p; p=”string”;10. 设程序中不再定义新的变量,写出在函数main中可以使用的所有变量为:(B) #include int z; int p(int x) static int y; return (x+y

4、); void main( ) int a,b; printf(“%dn”, p(a); A. a,b B. a,b,zC. a,b,y,z D. a,b,x,y,z11.有以下程序 main() int i=0,x=0; for (;) if(i=3|i=5) continue; if (i=6) break; i+; s+=i; ; printf(%dn,s); 程序运行后的输出结果是 (D) A)10 B)13 C)21 D)程序进入死循环12.有以下程序 main() char a,b,c,d; scanf(%c,%c,%d,%d,&a,&b,&c,&d); printf(c,%c,%

5、c,%cn,a,b,c,d); 若运行时从键盘上输入:6,5,65,66。则输出结果是(A) A)6,5,A,B B)6,5,65,66 C)6,5,6,5 D)6,5,6,613.s12和s2已正确定义并分别指向两个字符串。若要求:当s1所指串大于s2所指串时,执行语句S;则以下选项中正确的是(D)A)if(s1s2)S;B)if(strcmp(s1,s2)S;C)if(strcmp(s2,s1)0)S;D)if(strcmp(s1,s2)0)S;14.有以下定义和语句 int a32=1,2,3,4,5,6,*p3; p0=a1; 则*p0+1)所代表的数组元素是 (C) A)a01 B)

6、a10 C)a11 D)a1215.程序中对fun函数有如下说明 void *fun(); 此说明的含义是:(C) A)fun了数无返回值 B)fun函数的返回值可以是任意的数据类型 C)fun函数的返回值是无值型的指针类型 D)指针fun指向一个函数,该函数无返回值16.有以下程序 void fun(int *a,int i,int j) int t; if(iJ) t=a;a=aj;aj=t; i+; j-; fun(a,i,j); main() int x=2,6,18,i; fun(x,0,3); for(i=0;inum B)p-num C)(*p).numD)stu3.age18.

7、已定义ch为字符型变量,以下赋值语句中错误的是 (A)A)ch=; B)ch=62+3; C)ch=NULL; D)ch=xaa;19.以下选项中不能正确把cl定义成结构体变量的是 (B) A)typedef structB)struct color cl int red; int red;int green; int green;int blue; int blue; COLOR; ;COLOR cl; C)struct colorD)struct int red; int red;int green; int green;int blue; int blue; cl; cl;20.有以下程

8、序fun(int a, int b) if(ab) return(a);else return(b);main() int x=3, y=8, z=6, r;r=fun(fun(x,y), 2*z);printf(%dn, r);程序运行后的输出结果是 (D)A)3 B)6 C)8 D)1221.有以下程序段main() int a=5,*b,*c;c=&b; b=&a;程序在执行了c=&b;b=&a;语句后,表达式:*c的值是 (C)A)变量a的地址 B)变量b中的值C)变量a中的值 D)变量b的地址22. 设有 int x=11; 则表达式 (x+ * 1/3) 的值是 (A) A) 3

9、B) 4 C) 11 D) 1223. 下列程序的输出结果是 (C) A) 3 B) 3.2 C) 0 D) 3.07 main() double d=3.2; int x,y; x=1.2; y=(x+3.8)/5.0; printf(%d n, d*y); 24. 下列变量定义中合法的是 (A) A) short _a=1-.le-1; B) double b=1+5e2.5; C) long do=0 xfdaL; D) float 2_and=1-e-3;25. 以下循环体的执行次数是 (C) A) 3 B) 2 C) 1 D) 0 main() int i,j; for(i=0,j=

10、1; i=j+1; i+=2, j-)printf(%d n,i); 26. 以下叙述正确的是 (D) A) do-while语句构成的循环不能用其它语句构成的循环来代替。 B) do-while语句构成的循环只能用break语句退出。 C) 用do-while语句构成的循环,在while后的表达式为非零时结束循环。 D) 用do-while语句构成的循环,在while后的表达式为零时结束循环。27. 下列程序执行后的输出结果是(A) A) G B) H C) I D) J main() int x=f; printf(%c n,A+(x-a+1); 28. 下列程序执行后的输出结果是 (A)

11、 A) 6 B) 7 C) 8 D) 9 void func(int *a,int b) b0=*a+6; main() int a,b5; a=0; b0=3; func(&a,b); printf(%d n,b0); 29. 下列程序的运行结果是 (B) A) a=%2,b=%5 B) a=2,b=5 C) a=d, b=d D) a=%d,b=%d #include main() int a=2,c=5; printf(a=%d,b=%dn,a,c); 30. 设有数组定义: char array =China; 则数组 array所占的空间为 (C) A) 4个字节 B) 5个字节 C

12、) 6个字节D) 7个字节31. 下列程序的输出结果是 (B) A) 5 B) 6 C) 7 D) 8 struct abc int a, b, c; ; main() struct abc s2=1,2,3,4,5,6; int t; t=s0,a+s1,b; printf(%d n,t); 32. 若有以下调用语句,则不正确的fun函数的首部是 (C) A) void fun(int m, int x) B) void fun(int s, int h41) C) void fun(int p, int *s) D) void fun(int n, int a) main() int a5

13、0,n; fun(n, &a9); 33. 设已有定义: char *st=how are you; 下列程序段中正确的是 (A) A) char a11, *p; strcpy(p=a+1,&st4); B) char a11; strcpy(+a, st); C) char a11; strcpy(a, st); D) char a, *p; strcpy(p=&a1,st+2);34. 下列程序执行后的输出结果是 (A) A) you&ne B) you C) me D) err mai() char arr24; strcpy(arr,you); strcpy(arr1,me); ar

14、r03=&; printf(%s n,arr); 35. 下列程序执行后的输出结果是 (B) A) 6 B) 8 C) 10 D) 12 #define MA(x) x*(x-1) main() int a=1,b=2; printf(%d n,MA(1+a+b);36. 变量a所占内存字节数是 (C) A) 4 B) 5 C) 6 D) 8 union U char st4; int i; long l; ; struct A int c; union U u; a;二、填空题1. 表达式1015) 的值是 0 。2. 设变量已正确定义,在程序段B中填入正确的内容,使程序段 A 和程序段B等

15、价。 程序段 Afor(k=s=0;k=10;s+=ak+) if(ak0) break; 程序段B for(k=0,s=0; ; s+=ak+) if( ak10 ) break;3. 下列程序的输出结果是 100 。 #define T 10 #define MD 3*T printf(“%d”,30/MD);4. 下列程序的输出结果是 k=5, s=15 。 int k,s; for(k=s=0;k10&s=10;s+=k) k+; printf(“k=%d,s=%d”,k,s);5. 下列程序的输出结果是 5,9 。 #include int f(int m) static int k

16、=2; k+; return k+m;void main( ) int s; s=f(2); printf(“%d,%dn”,s,f(s); 6. 对于以下递归函数f,条用f(3)的返回值是 -2 。 f(int n) return(n=0)?n:f(n-1)+f(n-2);7. 下列程序的输出结果是 -10 。 int c =10,0,-10;int *k=c+2;printf(“%d”,*k-);8. 下列程序的输出结果是 2 1 。int k=1,j=2,*p=&k,*q=p;p=&j;printf(“%d %d”,*p,*q);9. 下列程序的输出结果是 un, g 。#include

17、 char *f(char *str) return str=”fun”;void main( ) char *str=”one”; printf(“%s,%cn”, f(str)+1,*f(str)+1);10. 下列程序的输出结果是 1,3 。#include void p(int *x,int y) +*x; y-; void main( ) int x=0,y=3; p(&x,y); printf(“%d,%d”x,y);11. 下列程序的输出结果是 1 0 0 1 。#include int j,k,a22; for(k=1;k3;k+) for(j=1;j3;j+) ak-1j-1=(k/j)*(j/k); for(k=0;k2;k+) for(j=0;j2;j+) printf(”%d”,akj);12. 下面程序的功能是:计算1到10之间奇数之和

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论