1、WORD文档WORD 格式整理专升本 C语言历年考试题及答案 一、单项选择题1. C 语言源程序文件经过 C编译程序编译连接之后生成一个后缀为 _C_的文件。A 、”.c ” B 、“.obj ” C、“.exe ” D、“.bas ”2. 以下选项中不正确的整型常量是 _C_。A 、 12L B、 -10 C、 1,900 D、 123U3. 表达式 _C_的值是 0。A、3%5 B 、3/5.0 C、3/5 D、30|y0) 等价于 _D_。A、!x0|!y0 B、!(x0)|!(y0) C、!x0&!y0 D、!(x0)&!(y0)5. 若变量已正确定义并赋值,表达式 _D_不符合 C语
2、言语法。A、4&3 B 、+a C、a=b=5 D、int(3.14)6. 若变量已正确定义,执行语句 scanf(%d%d%d ,&k1,&k2,&k3) ;时, _B_是正确的输入。A、2030,40 B 、20 30 40 C、20, 30 40 D、20, 30,407. 执行语句 printf( ”_D_”, 2); 将得到出错信息。A、%d B 、%o C、%x D、%f8. 设变量定义为“ int s =hello n; ”,则数组 s 中有_B_个元素。A、12 B 、13 C、14 D、159. 设变量定义为“ int a2=1,3, *p=&a0+1; ”,则 *p 的值是
3、 _B_。A、2 B、3 C、4 D、&a0+110. 若变量已正确定义并赋值,表达式 -k+ 等价于 _A_。A、-(k+) B、(-k)+ C、-(k+1) D、-(+k)11. 在 C 语言程序中,在函数内部定义的变量称为 _D_。专业技术参考资料专业资料WORD 格式整理A、全局变量B、全程变量 C、外部变量 D、内部变量12. 若 x 是整型变量,表达式 (x=10.0/4.0) 的值是 _D_ 。A、2.5 B、 2.0 C、 3 D、213. 对于以下的变量定义,表达式 _A_是正确的。struct node char s10;int k; p4;A、p-k=2 B 、p0.s=
4、 “abc” C、p0-k=2 D、p- s=a14. 下列运算符中,优先级从高到低依次为 _D_。A、&,! ,| B 、| ,&,! C、&,| ,! D、 !, &,|15. 下列程序段的输出结果是 _B_。int *p, *q, k = 1, j=10 ;p=&j; q = &k ; p = q ; (*p)+;printf(%d,*q);A、1 B、2 C、10 D、1116 以下各选项企图说明一种新的类型名,其中正确的是水量 (C)A) typedef v1 int; B) typedef v2=int;C) typedefv1 int v3; D) typedef v4: int
5、;17. 以下选项中,非法的字符常量是 (C)A) t B) 17 C)“n”D) xaa18. 以下程序的输出结果是 (C)main() int i, a10;for(i=9;i=0;i-) ai=10-i;printf( “%d%d%”d,a2,a5,a8);专业技术参考资料WORD 格式整理A) 258 B) 741 C) 852 D) 36916. 以下程序的输出结果是( B)main() char st20= “ ” ;printf(%d %d n ”,strlen(st),sizeof(st);A) 9 9 B) 5 20 C) 13 20 D) 20 2017. 以下程序的输出结
6、果是 (D)main() int a, b;for(a=1, b=1; a=10) break;if (b%3= =1) b+=3; continue; printf( “%dn”,a);A) 101 B) 6 C) 5 D) 418. 以下程序的输出结果是 (D)union myun struct int x, y, z; u;int k; a;main() a.u.x=4; a.u.y=5; a.u.z=6;a.k=0;printf(%dn ”,a.u.x);A) 4 B) 5 C) 6 D) 019. 以下程序段的输出结果是 (A)char s=141141abct;printf (%d
7、n,strlen(s);A) 9 B) 12 C) 13 D) 1420. 以下程序的输出结果是 (B)main() char ch35=AAAA,BBB,CC;printf(%sn,ch1);专业技术参考资料WORD 格式整理A) AAAA B) BBB C) BBBCC D) CC21. 不合法的 main 函数命令行参数表示形式是 (C)A) main(int a,char *c) B) main(int arc,char *arv)C) main(int argc,char *argv) D) main(int argv,char *argc)22. 有以下程序main() char
8、*s=one,two,three,*p;p=s1;printf(%c,%sn,*(p+1),s0);执行后输出结果是 (C)A) n,two B) t,one C)w,one D) o,two23. 设有如下说明typedef struct int n; char c; double x;STD;则以下选项中,能正确定义结构体数组并赋初值的语句是 (A)A) STD tt2=1,A,62,2, B,75;B) STD tt2=1,A,62,2, B,75;C) struct tt2=1,A,2, B;D)structtt2=1,A,62.5,2, B,75.0;24. 若变量 c 为 char
9、 类型,则能正确判断出 c 为小写字母的表达式是( D )。A) a=c= a)|(c= z)C) (a=c) D) (c= a)&(c=A&ch,=Z)|(ch= a&ch0)y=1;else if(x=0)y=0;else y=-1;_ 。1 x0y= 0 x=0-1 x021. 表达式 !5 的值是 _1_。22. 下列程序段的输出结果是 _12_。专业技术参考资料WORD 格式整理printf(%xn, (0x19 1) & 0x17);25. 下列程序段的输出结果是 _ k=4 s=6_ 。int k, s;for(k=0, s=0; kk) break ;else s += k;p
10、rintf(k=%d s=%d, k, s);26. 下列程序段的输出结果是 _15_。#define MIN(x,y) (x)(y)?(x) : (y)printf(%d,10*MIN(10,15);27. 下列程序在运行时可能会出错,原因是 _指针变量 s 未赋初值 _。# includevoid main( ) char *s;gets(s);puts(s);28. 下列程序段的输出是 _6 0_。# includeint f(int m) static int k=0;int s=0;for(; k*s ) s=p;return(*s);main() int x5=12,21,13,6
11、,18;printf(%dn,findmax(x,5);三、程序 ( 段) 填空题1设变量 x, y, z 已正确定义和赋值,请仔细阅读程序段,然后在程序段中填入正确的内容,使程序段和程序段有相同的功能。专业技术参考资料WORD 格式整理程序段 A程序段 Bx=x+y;y=x-y;x=x-y;z=x+y;z=x ;x=y ;y=z;z=x+y;2请仔细阅读函数 f1 ,然后在函数 f2 中填入正确的内容,使函数 f1 和函数 f2 有相同的功能。char *f1(char s , char t) int k;for(k=0; tk!= ; k+)sk=tk;sk= ;return s;专业技术参考资料谢谢.