1、2014 级专科 C 语言考试复习题1( )是构成 C 语言程序的基本单位。A、函数 B、过程 C、子程序 D、子例程2C 语言程序从( )开始执行。A、 程序中第一条可执行语句 B、 程序中第一个函数C、 程序中的 main 函数 D、包含文件中的第一个函数3、给出以下定义:char x=“abcdefg“;char y=a,b,c,d,e,f,g;则正确的叙述为( )A)数组 X 和数组 Y 等价B)数组 X 的长度大于数组 Y 的长度C)数组 x 和数组 Y 的长度相同 D)数组 X 的长度小于数组 Y 的长度4.下列关于 C 语言的说法错误的是( ) 。A、 C 程序的工作过程是编辑、
2、编译、连接、运行B、 C 语言不区分大小写。C、 C 程序的三种基本结构是顺序、选择、循环D、C 程序从 main 函数开始执行5下列四组选项中,正确的 C 语言标识符是()。A、 %x B、a+b C、a123 D、1236.C 语言中的简单数据类型包括( )。A、整型、实型、逻辑型 B、整型、实型、逻辑型、字符型C、整型、字符型、逻辑型 D、整型、实型、字符型7.在 C 语言程序中,表达式 5%2 的结果是 。A、2.5 B、2 C、1 D、38C 语言中,关系表达式和逻辑表达式的值是() 。A、0 B、 0 或 1 C、 1 D、T或F9. 若“int n; float f=13.8;”
3、,则执行“n=(int)f%3”后,n 的值是()A、1 B、4 C、4.333333D、4.610.在 C 语言中对一维整型数组的正确定义为( )。A、inta(10); B、int n=10,an;C、intn;an; D、#define N 10int aN; 11、已知:int a10; 则对 a 数组元素的正确引用是( )。A、a10 B、a3.5 C、a(5) D、a012.若有说明:int a3=1,2,3,4,5,6,7; 则数组 a 的第一维的大小为: ( )A、2 B、3 C、4 D、无确定值13已知 int a34;则对数组元素引用正确的是( )A、a24 B、a1,3
4、C、a20 D、a(2)(1)14.C 语言中函数返回值的类型是由( )决定的.A、函数定义时指定的类型 B、 return 语句中的表达式类型 C、 调用该函数时的实参的数据类型D、形参的数据类型15.在函数调用时,以下说法正确的是( )A、函数调用后必须带回返回值B、实际参数和形式参数可以同名C、函数间的数据传递不可以使用全局变量D、主调函数和被调函数总是在同一个文件里16int *p;语句 int *p;说明了 。A、p 是指向一维数组的指针 B、p 是指向函数的指针,该函数返回一 int 型数据C、p 是指向 int 型数据的指针 D、p 是函数名,该函数返回一指向 int 型数据的指
5、针17. 在 C 语言中,以 D 作为字符串结束标志A、n B、 C、 0 D、0 18、C 语言程序的三种基本结构是_A、顺序结构,选择结构,循环结构 B、递归结构,循环结构,转移结构 C、嵌套结构,递归结构,顺序结构 D、循环结构,转移结构,顺序结构19、x、y、z 被定义为 int 型变量,若从键盘给 x、y、z 输入数据,正确的输入语句是 A) inputx,y,z; B) scanf(“%d%d%d“, C) scanf(“%d%d%d“,x,y,z); D) read(“%d%d%d“,20、表达式:10!=9 的值是 A) true B) 非零值 C) 0 D) 121、表示关系
6、 x12?x+10:x-12;printf(“%dn“,y); A 0 B 22 C 12 D 1024、设 x、y、z 和 k 都是 int 型变量,则执行表达式:x=(y=4,z=16,k=32)后,x 的值为A 4 B 16 C 32 D 5225、下列说法中正确的是_。 A、在 switch 语句中一定要使用 break 语句 B、在 switch 语句中不一定要使用 break 语句C、break 语句是 switch 语句的一部分 D、break 只能用于 switch 语句中、26、下列运算符其优先级最高的是_。A、| B、 while 循环执行的次数是A) 无限次 B) 有语法
7、错,不能执行C) 一次也不执行 D) 执行 1 次29、语句:printf(“%d“,(a=2)的输出结果是_A) 无输出 B) 结果不确定 C) -1 D) 130、在 C 语言中,若对函数类型未说明,则函数的隐含类型是_类型 A) void B) double C) intD) char31、设有程序段 int k=10; while (k=0) k=k-1; 则下面描述中正确的是 ( )A while 循环执行 10 次 B 循环是无限循环C 循环体语句一次也不执行D 循环体语句执行一次32、对 for(表达式 1; 表达式 3)可理解为( )A.for(表达式 1;0; 表达式 3)B
8、.for(表达式 1;1;表达式 3)C.for(表达式 1;表达式 1;表达式 3)D.for(表达式 1;表达式 3;表达式 3)38.若有代数式 3ae/bc,则不正确的 C 语言表达式是( )A.a/b/c*e*3B.3*a*e/b/cC.3*a*e/b*cD.a*e/c/b*334.printf 函数中用到格式符%5s,其中数字 5 表示输出的字符串占用 5 列.如果字符串长度以大于 5,则输出按方式( )A.从左起输出该字串,右补空格B.按原字符长从左向右全部输出C.右对齐输出该字串,左补空格D.输出错误信息35.判断 char 型量 ch 是否为大写字母的正确表达式是( )A.A
9、=A)B.if(x0)x=x+y;printf(“%f”,x);else printf(“%f”,-x)C.if(x0)x=xy; printf(“%f”,x);elseprintf(“%f”,-x);D.if(x0)x=x+y;printf(“%f”,x)else printf(“%f”,-x);37. 设有以下宏定义: #define N 3#define Y(n) ( (N+1)*n) 则执行语句:z=2 * (N+Y(5+1);后,z 的值为A) 出错 B) 42 C) 48 D) 5438.以下程序的输出结果是_。main()float x=3.6;inti;i=(int)x;pri
10、nt(“x=%f,i=%d”,x,i);A、x=3.600000,i=4 B、x=3,i=3C、x=3.600000,i=3 D、x=3,i=3.60000039.以下正确的说法是( )如果在一个函数中的复合语句中定义了一个变量,则该变量A.只在该复合语句中有效 B.在该函数中有效 C.在本程序范围内均有效 D.为非法变量40. 以下程序运行后,输出结果是( )main()int a33=3,2,1,4,5,6,2,9,2;int i,j,s=0;for(i=0;i2) return(fib(n-1)+fib(n-2);else return(2); main() printf(“%dn“,f
11、ib(3); 该程序的输出结果是 A) 2 B) 4 C) 6 D) 8二、填空题:1Strcat 函数的作用是() 。2在函数外部定义的变量是() ;形式参数是() 。3. 调用 C 语言数学函数时要求用()命令。4. 字符串“I am a student.”在存储单元中占()个字节。5. 如果要比较两个字符串中的字符是否相同,可使用的库函数是().6. 在 c 语言中,字符串不存放在一个变量中,而是存放在一个()中。7. 设有 int a34=1,2,3;,则 a11的值为( ) 。8. 在 int a=3;p=则表达式 a12+a23的值是( ) 。12. 设 int a=2;,则执行
12、a+=a*=15;后,变量 a 的值是( ) 。13若函数调用语句为 f(a,b,f(a+b,a-b,b);,则函数 f 的参数个数是( ) 。14C 语言中一个单精度浮点数据占( )个字节。15. C 语言中逻辑值真用( )表示。16.C 语言中字符型数据在内存中以( )码形式存放。17. 若已知 a=10,b=20,则!abc 的值是( ) 。19.( )函数代表从键盘缓冲区读入一个字符,且只能接受一个字符。20.设 ch 是 char 型 变 量 , 其 值 为 A, 且 有 下 面 的 表 达 式 : ch=(ch=A else max=b;29. 当 a=3,b=4,c=5 时,表达
13、式 !ac=a+b;return c;main()int x=5,z;z=fun(x+4,x);printf(“%d”,z)2.从键盘输入两个数 a 和 b,要求输出 a 和 b 中大者。#includemain() inta,b;if(_)printf(“%d”,a);elseprintf(“%d”,_);3下面程序输出在 170 间不能被 8 整除的数。#includevoid main() int n;for(n=1; _;n+) if(_ )_;elseprintf(“%dt”,n);4程序运行后的输出结果是 #include void fun(inta,intb,int c)a=b;
14、b=c;c=a;main()int a=10,b=20,c=30;fun(a,b,c);printf(“%d ,%d,%d”,c,b,a);5.若有以下程序,则程序的输出结果是#include main() ints=0,n;for(n=0;nmain()int y=1,x,a=2,4,6,8,10,*p;p=for(x=0;xline 2: int x= 1;line 3: main()line 4: if( x = 1);line 5: printf(“ x equals 1“ )line 6: elseifline 7: printf(“ x does not equal 1“);lin
15、e 8: return 0;line 9: 2.本程序从键盘输入一个正整数 n,计算 n!的值。要求定义和调用函数 fact(n),计算n!。 (共有 3 个错误)#01 #include #02 void main(void)#03 #04 int n;#05 double f;#06 double fact(int m);#07 printf(“Input n: “); #08 scanf(“%d“, n);#09 f = fact( ); #10 printf(“%d!=%fn“, n, f);#11 #12 double fact(int m);#13 #14 int i;#15 double product;#16 for ( i = 1; i = m; i+ ) #17 product = product * i;#18 return product; #19